#ifndef OPERATION_H #define OPERATION_H typedef enum Operation { OP_NOTHING, OP_PUSH_INT, OP_PUSH_FLOAT, OP_PUSH_CONST_STRING, OP_PUSH_NULL, OP_PUSH_TRUE, OP_PUSH_FALSE, OP_PUSH_VARS, OP_POP_VARS, OP_POP, OP_SET, OP_PRE_INCREMENT, OP_POST_INCREMENT, OP_PRE_DECREMENT, OP_POST_DECREMENT, OP_ADD, OP_SUB, OP_MUL, OP_DIV, OP_MOD, OP_INVERT_SIGN, OP_LESS, OP_GREATER, OP_EQUAL, OP_NOT, OP_AND, OP_OR, OP_BIT_NOT, OP_BIT_AND, OP_BIT_OR, OP_BIT_XOR, OP_LEFT_SHIFT, OP_RIGHT_SHIFT, OP_PRINT, OP_LINE, OP_GOTO, OP_GOSUB, OP_IF_GOTO, OP_SET_RETURN, OP_RETURN, OP_DUPLICATE, OP_ALLOCATE_ARRAY, OP_ARRAY_LENGTH, OP_REFERENCE_FROM_VAR, OP_REFERENCE_FROM_ARRAY, OP_DEREFERENCE, } Operation; #endif