MCPcopy Index your code
hub / github.com/RustPython/RustPython / _convert

Function _convert

Lib/ast.py:80–105  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

78 return - operand
79 return _convert_num(node)
80 def _convert(node):
81 if isinstance(node, Constant):
82 return node.value
83 elif isinstance(node, Tuple):
84 return tuple(map(_convert, node.elts))
85 elif isinstance(node, List):
86 return list(map(_convert, node.elts))
87 elif isinstance(node, Set):
88 return set(map(_convert, node.elts))
89 elif (isinstance(node, Call) and isinstance(node.func, Name) and
90 node.func.id == 'set' and node.args == node.keywords == []):
91 return set()
92 elif isinstance(node, Dict):
93 if len(node.keys) != len(node.values):
94 _raise_malformed_node(node)
95 return dict(zip(map(_convert, node.keys),
96 map(_convert, node.values)))
97 elif isinstance(node, BinOp) and isinstance(node.op, (Add, Sub)):
98 left = _convert_signed_num(node.left)
99 right = _convert_num(node.right)
100 if isinstance(left, (int, float)) and isinstance(right, complex):
101 if isinstance(node.op, Add):
102 return left + right
103 else:
104 return left - right
105 return _convert_signed_num(node)
106 return _convert(node_or_string)
107
108

Callers 1

literal_evalFunction · 0.70

Calls 7

isinstanceFunction · 0.85
listClass · 0.85
setFunction · 0.85
lenFunction · 0.85
_raise_malformed_nodeFunction · 0.85
_convert_signed_numFunction · 0.85
_convert_numFunction · 0.85

Tested by

no test coverage detected