CFunctionCallExpression = collections.namedtuple(
'CFunctionCallExpression',
[
- 'name',
+ 'function_expression',
'argument_count',
'argument_items',
],
'CIfElseStatement',
[
'condition_expression',
- 'if_statements',
- 'else_statements',
+ 'if_statement_list',
+ 'else_statement_list',
],
)
def transform_expression(accumulators, expression):
# TODO Clean up handlers for parsing expressions
return {
- parsing.FurFunctionCallExpression: transform_function_call_expression,
parsing.FurInfixExpression: transform_infix_expression,
parsing.FurIntegerLiteralExpression: transform_integer_literal_expression,
parsing.FurNegationExpression: transform_negation_expression,
def transform_function_call_expression(accumulators, function_call):
# TODO Use the symbol from SYMBOL LIST
return CFunctionCallExpression(
- name=transform_expression(accumulators, function_call.function),
+ function_expression=transform_expression(accumulators, function_call.function_expression),
argument_count=function_call.argument_count,
argument_items=transform_expression(accumulators, function_call.argument_items),
)
def transform_if_else_statement(accumulators, statement):
return CIfElseStatement(
condition_expression=transform_expression(accumulators, statement.condition_expression),
- if_statements=tuple(transform_statement(accumulators, s) for s in statement.if_statements),
- else_statements=tuple(transform_statement(accumulators, s) for s in statement.else_statements),
+ if_statement_list=tuple(transform_statement(accumulators, s) for s in statement.if_statement_list),
+ else_statement_list=tuple(transform_statement(accumulators, s) for s in statement.else_statement_list),
)
def transform_array_variable_initialization_statement(accumulators, statement):