예제 #1
0
        internal JSContext CreateCatchScope(JSRuntimeException ex, string varname)
        {
            JSContext ctx = new JSContext(this);
            JSEnvRec  r   = new JSDeclScope(this.LexicalEnv);

            r.CreateMutableBinding(varname);
            r.SetMutableBinding(varname, ex.value);
            ctx.LexicalEnv = r;
            return(ctx);
        }
예제 #2
0
        internal bool HandleError(int line, JSRuntimeException ex)
        {
            DebugWrapper Debugger = this.Debugger;

            if (ex.Line == -1)
            {
                ex.Line = line;
            }
            if (Debugger == null)
            {
                return(false);
            }
            return(Debugger.HandleError(line, ex));
        }
예제 #3
0
 internal bool HandleError(int line, JSRuntimeException ex)
 {
     this.BreakLine = line;
     lock (this._sync)
     {
         this.Error = ex;
         this.state = State.Paused;
         Monitor.Pulse(this._sync);
         Monitor.Wait(this._sync);
     }
     if (this.state == State.Running)
     {
         return(true);
     }
     this.state = State.Failed;
     throw new _ExWrapper(ex);
 }
예제 #4
0
 public _ExWrapper(JSRuntimeException ex) : base("", ex)
 {
 }
예제 #5
0
 internal bool HandleError(int line, JSRuntimeException ex)
 {
     DebugWrapper Debugger = this.Debugger;
     if (ex.Line == -1)
     {
         ex.Line = line;
     }
     if (Debugger == null)
     {
         return false;
     }
     return Debugger.HandleError(line, ex);
 }
예제 #6
0
 internal JSContext CreateCatchScope(JSRuntimeException ex, string varname)
 {
     JSContext ctx = new JSContext(this);
     JSEnvRec r = new JSDeclScope(this.LexicalEnv);
     r.CreateMutableBinding(varname);
     r.SetMutableBinding(varname, ex.value);
     ctx.LexicalEnv = r;
     return ctx;
 }
예제 #7
0
 public _ExWrapper(JSRuntimeException ex)
     : base("", ex)
 {
 }
예제 #8
0
 internal bool HandleError(int line, JSRuntimeException ex)
 {
     this.BreakLine = line;
     lock (this._sync)
     {
         this.Error = ex;
         this.state = State.Paused;
         Monitor.Pulse(this._sync);
         Monitor.Wait(this._sync);
     }
     if (this.state == State.Running)
     {
         return true;
     }
     this.state = State.Failed;
     throw new _ExWrapper(ex);
 }