// --- Indexing / Scoping
void Bytecode_AppendElement(tBC_Function *Handle, const char *Name)
DEF_BC_STR(BC_OP_ELEMENT, Name)
+void Bytecode_AppendSetElement(tBC_Function *Handle, const char *Name)
+ DEF_BC_STR(BC_OP_SETELEMENT, Name)
void Bytecode_AppendIndex(tBC_Function *Handle)
DEF_BC_NONE(BC_OP_INDEX)
+void Bytecode_AppendSetIndex(tBC_Function *Handle)
+ DEF_BC_NONE(BC_OP_SETINDEX);
void Bytecode_AppendCreateObj(tBC_Function *Handle, const char *Name, int ArgumentCount)
DEF_BC_STRINT(BC_OP_CREATEOBJ, Name, ArgumentCount)
DEF_BC_INT(BC_OP_CAST, Type)
void Bytecode_AppendDuplicate(tBC_Function *Handle)
DEF_BC_NONE(BC_OP_DUPSTACK);
+void Bytecode_AppendDelete(tBC_Function *Handle)
+ DEF_BC_NONE(BC_OP_DELSTACK);
// Does some bookeeping to allocate variable slots at compile time
void Bytecode_AppendEnterContext(tBC_Function *Handle)
Handle->CurContextDepth --;
Handle->VariableCount = i;
- DEF_BC_NONE(BC_OP_LEAVECONTEXT)
+ DEF_BC_NONE(BC_OP_LEAVECONTEXT);
}
//void Bytecode_AppendImportNamespace(tBC_Function *Handle, const char *Name);
// DEF_BC_STRINT(BC_OP_IMPORTNS, Name, 0)