return LITERAL_TYPE_MAPPING[type(expression)](expression)
if isinstance(expression, transformation.CFunctionCallForFurInfixOperator):
- return 'builtin${}({}, {})'.format(
+ return 'operator${}({}, {})'.format(
expression.name,
generate_expression(expression.left),
generate_expression(expression.right),
}[type(expression)](expression)
def generate_negation_expression(c_negation_expression):
- return 'builtin$negate({})'.format(
+ return 'operator$negate({})'.format(
generate_expression(c_negation_expression.value)
)
def generate_function_call(function_call):
- return '{}({}, {})'.format(
+ return 'Environment_get(environment, "{}").instance.closure({}, {})'.format(
function_call.name,
function_call.argument_count,
# TODO This is just a single item containing a reference to the items list--make that clearer