public static void GenRestore(Token errorAt, ScriptMyILGen ilGen) { ilGen.Emit(errorAt, OpCodes.Call, listRestoreMethod); }
// generate CIL code to pop the value ie store in value // input: // 'this' pointer already pushed on CIL stack // new value // output: public static void GenPop(Token errorAt, ScriptMyILGen ilGen) { ilGen.Emit(errorAt, OpCodes.Call, listSaveMethod); }
// generate CIL code to push the value on the CIL stack // input: // 'this' pointer already pushed on CIL stack // output: // 'this' pointer popped from stack // value pushed on CIL stack replacing 'this' pointer // returns typeof value pushed on stack public static Type GenPush(Token errorAt, ScriptMyILGen ilGen) { ilGen.Emit(errorAt, OpCodes.Ldfld, listValueField); return(typeof(LSL_List)); }
// generate CIL code to push the value on the CIL stack // input: // 'this' pointer already pushed on CIL stack // output: // 'this' pointer popped from stack // value pushed on CIL stack replacing 'this' pointer // returns typeof value pushed on stack public static Type GenPush(Token errorAt, ScriptMyILGen ilGen) { ilGen.Emit(errorAt, OpCodes.Ldfld, stringValueField); return(typeof(string)); }
public static void GenFree(Token errorAt, ScriptMyILGen ilGen) { ilGen.Emit(errorAt, OpCodes.Call, stringFreeMethod); }