Пример #1
0
 protected override void Process(string[] args)
 {
     if (args.Length < 2)
     {
         Console.Out.WriteLine("Argument <file name> is missing");
     }
     else if (args.Length < 3)
     {
         Console.Out.WriteLine("Argument <line> is missing");
     }
     else
     {
         try
         {
             LuaDebugBreakpoint breapoint = App.Debugger.AddBreakpoint(args[1], Int32.Parse(args[2]));
             Console.Out.WriteLine(String.Format("Added breakpoint at {0}:{1}", breapoint.File.FileName, breapoint.Line));
         }
         catch (FormatException ex)
         {
             Console.Out.WriteLine("Argument 2: FormatException");
             Console.Out.WriteLine(ex.Message);
         }
     }
 }
Пример #2
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="luaDebug">Lua debug structure.</param>
 /// <param name="fileName">Filename</param>
 /// <param name="line">Line number</param>
 /// <param name="action">Action</param>
 /// <param name="breakpoint">Brewakpoint</param>
 public StopingEventArgs(LuaDebug luaDebug, string fileName, int line, DebuggerActions action, LuaDebugBreakpoint breakpoint)
 {
     LuaDebug = luaDebug;
      FileName = fileName;
      Line = line;
      Action = action;
      Breakpoint = breakpoint;
 }
Пример #3
0
 /// <summary>
 /// Stops execution.
 /// </summary>
 /// <param name="luaDebug">LuaDebug from debug hook.</param>
 /// <param name="action">Current Debugger Action.</param>
 /// <param name="breakpoint">Brekpoint. Can be null.</param>
 /// <remarks>
 /// The WaitingForAction event is called as long as State == Stoped.
 /// </remarks>
 private void StopExecution(LuaDebug luaDebug, DebuggerActions action, LuaDebugBreakpoint breakpoint)
 {
     m_State = LuaDebuggerState.Stoped;
      try
      {
     OnStopping(new StopingEventArgs(
        luaDebug, luaDebug.shortsrc,
        luaDebug.eventCode == EventCodes.LUA_HOOKCALL ? luaDebug.linedefined : luaDebug.currentline,
        action,
        breakpoint));
     do
     {
        OnWaitingForAction(new EventArgs());
     }
     while (m_State == LuaDebuggerState.Stoped);
      }
      finally
      {
     m_State = LuaDebuggerState.Running;
      }
 }