extern void Bytecode_AppendConstInt(tBC_Function *Handle, uint64_t Value);
extern void Bytecode_AppendConstReal(tBC_Function *Handle, double Value);
extern void Bytecode_AppendConstString(tBC_Function *Handle, const void *Data, size_t Length);
+extern void Bytecode_AppendConstNull(tBC_Function *Handle);
// > Scoping
extern void Bytecode_AppendElement(tBC_Function *Handle, const char *Name); // Obj->SubObj
+extern void Bytecode_AppendSetElement(tBC_Function *Handle, const char *Name); // Set an object member
extern void Bytecode_AppendIndex(tBC_Function *Handle); // Index into an array
+extern void Bytecode_AppendSetIndex(tBC_Function *Handle); // Write an array element
// > Function Calls
extern void Bytecode_AppendCreateObj(tBC_Function *Handle, const char *Name, int ArgumentCount);
extern void Bytecode_AppendMethodCall(tBC_Function *Handle, const char *Name, int ArgumentCount);
extern void Bytecode_AppendUniOp(tBC_Function *Handle, int Operation);
extern void Bytecode_AppendCast(tBC_Function *Handlde, int Type);
extern void Bytecode_AppendDuplicate(tBC_Function *Handlde);
+extern void Bytecode_AppendDelete(tBC_Function *Handle);
// - Context
// TODO: Are contexts needed? Should variables be allocated like labels?
extern void Bytecode_AppendEnterContext(tBC_Function *Handle);