MCPcopy Create free account
hub / github.com/SplootCode/splootcode / generateAstExpressionToken

Function generateAstExpressionToken

python/executor.py:86–121  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

84 return ast.Slice(lower, upper, None)
85
86def generateAstExpressionToken(node):
87 if node["type"] == "PYTHON_CALL_VARIABLE":
88 return generateCallVariable(node)
89 elif node["type"] in ["STRING_LITERAL", "PYTHON_BOOL"]:
90 return ast.Constant(node["properties"]["value"])
91 elif node["type"] == "NUMERIC_LITERAL":
92 num_val = node["properties"]["value"]
93 try:
94 return ast.Constant(int(num_val))
95 except ValueError:
96 return ast.Constant(float(num_val))
97 elif node["type"] == "PYTHON_NONE":
98 return ast.Constant(None)
99 elif node["type"] == "PY_IDENTIFIER":
100 identifier = node["properties"]["identifier"]
101 return ast.Name(identifier, ctx=ast.Load())
102 elif node["type"] == "PYTHON_CALL_MEMBER":
103 return generateCallMember(node)
104 elif node["type"] == "PYTHON_MEMBER":
105 return generateMember(node)
106 elif node["type"] == "PYTHON_LIST":
107 return generateList(node)
108 elif node["type"] == "PY_TUPLE":
109 return generateTuple(node)
110 elif node["type"] == "PY_SET":
111 return generateSet(node)
112 elif node["type"] == "PY_DICT":
113 return generateDict(node)
114 elif node["type"] == "PYTHON_SUBSCRIPT":
115 return generateSubscript(node)
116 elif node["type"] == "PY_BRACKET":
117 return generateAstExpression(node['childSets']['expr'][0])
118 elif node["type"] == "PY_SLICE":
119 return generateSlice(node)
120 else:
121 raise Exception(f'Unrecognised expression token type: {node["type"]}')
122
123
124def generateAstAssignableExpression(nodeList):

Callers 5

generateCallMemberFunction · 0.70
generateMemberFunction · 0.70
generateSubscriptFunction · 0.70
generateSliceFunction · 0.70
parseLeafFunction · 0.70

Calls 10

generateCallVariableFunction · 0.70
generateCallMemberFunction · 0.70
generateMemberFunction · 0.70
generateListFunction · 0.70
generateTupleFunction · 0.70
generateSetFunction · 0.70
generateDictFunction · 0.70
generateSubscriptFunction · 0.70
generateAstExpressionFunction · 0.70
generateSliceFunction · 0.70

Tested by

no test coverage detected