Пример #1
0
        async Task <bool> Step(MessageId msg_id, StepKind kind, CancellationToken token)
        {
            var context = GetContext(msg_id);

            if (context.CallStack == null)
            {
                return(false);
            }

            if (context.CallStack.Count <= 1 && kind == StepKind.Out)
            {
                return(false);
            }

            var res = await SendMonoCommand(msg_id, MonoCommands.StartSingleStepping(kind), token);

            var ret_code = res.Value? ["result"]? ["value"]?.Value <int> ();

            if (ret_code.HasValue && ret_code.Value == 0)
            {
                context.CallStack = null;
                await SendCommand(msg_id, "Debugger.stepOut", new JObject(), token);

                return(false);
            }

            SendResponse(msg_id, Result.Ok(new JObject()), token);

            context.CallStack = null;

            await SendCommand(msg_id, "Debugger.resume", new JObject(), token);

            return(true);
        }
Пример #2
0
        async Task Step(MessageId msg_id, StepKind kind, CancellationToken token)
        {
            var res = await SendMonoCommand(msg_id, MonoCommands.StartSingleStepping(kind), token);

            SendResponse(msg_id, Result.Ok(new JObject()), token);

            this.current_callstack = null;

            await SendCommand(msg_id, "Debugger.resume", new JObject(), token);
        }
Пример #3
0
        async Task <bool> Step(MessageId msg_id, StepKind kind, CancellationToken token)
        {
            var context = GetContext(msg_id);

            if (context.CallStack == null)
            {
                return(false);
            }

            var res = await SendMonoCommand(msg_id, MonoCommands.StartSingleStepping(kind), token);

            SendResponse(msg_id, Result.Ok(new JObject()), token);

            context.CallStack = null;

            await SendCommand(msg_id, "Debugger.resume", new JObject(), token);

            return(true);
        }