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

Function generateAstExpressionToken

python/text_generator.py:81–116  ·  view source on GitHub ↗
(node)

Source from the content-addressed store, hash-verified

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