in core/shelllib.py [0:0]
def shell_expand(value):
if isinstance(value, dict):
return dict((k, shell_expand(v)) for k, v in value.items())
elif isinstance(value, set):
return set(shell_expand(v) for v in value)
elif isinstance(value, list):
return list(shell_expand(v) for v in value)
elif isinstance(value, tuple):
return tuple(shell_expand(v) for v in value)
elif isinstance(value, str):
return _shell_expand_str(value)
else:
return value