}
// TODO Make this conditionally added
-Object operator$concatenate(Object left, Object right)
+Object operator$concatenate(Stack* stack)
{
+ Object right = Stack_pop(stack);
+ Object left = Stack_pop(stack);
+
switch(left.type) {
case STRING_CONCATENATION:
case STRING_LITERAL:
}
{% for id in infix_declarations %}
-Object operator${{ id.name }}(Object left, Object right)
+Object operator${{ id.name }}(Stack* stack)
{
+ Object right = Stack_pop(stack);
+ Object left = Stack_pop(stack);
+
assert(left.type == {{ id.in_type.upper() }});
assert(right.type == {{ id.in_type.upper() }});