예제 #1
0
        public AD7StackFrame(AD7Engine engine, AD7Thread thread, LuaStackFrame threadContext)
        {
            _engine     = engine;
            _thread     = thread;
            _stackFrame = threadContext;

            _parameters = threadContext.Parameters.ToArray();
            _locals     = threadContext.Locals.ToArray();
        }
예제 #2
0
 private object TestAssert(object test, string sMessage)
 {
     if (!(bool)Lua.RtConvertValue(test, typeof(bool)))
     {
         LuaStackFrame frame = LuaExceptionData.GetStackTrace(new StackTrace(0, true)).FirstOrDefault(c => c.Type == LuaStackFrameType.Lua);
         if (frame == null)
         {
             Assert.IsTrue(false, "Test failed (unknown position) " + sMessage);
         }
         else
         {
             Assert.IsTrue(false, "Test failed at line {0}, column {1}, file {2} {3}", frame.LineNumber, frame.ColumnNumber, frame.FileName, sMessage);
         }
     }
     return(test);
 }
예제 #3
0
 public AD7MemoryAddress(AD7Engine engine, string filename, uint lineno, LuaStackFrame frame)
     : this(engine, filename, lineno)
 {
     _frame = frame;
 }