void CreateStartupDebugBreakEvent(DebugEventBreakpointKind evt, Func <DebugEventBreakpointConditionContext, bool> cond = null) { Debug.Assert(debugger.ProcessState == DebuggerProcessState.Starting); DnDebugEventBreakpoint bp = null; bp = debugger.CreateBreakpoint(evt, ctx => { if (cond == null || cond(ctx)) { debugger.RemoveBreakpoint(bp); return(true); } return(false); }); }
public DebugEventBreakpointPauseState(DnDebugEventBreakpoint bp) : base(DebuggerPauseReason.DebugEventBreakpoint) { this.bp = bp; }
/// <summary> /// Creates a debug event breakpoint /// </summary> /// <param name="eventType">Debug event</param> /// <param name="bpCond">Condition or null</param> /// <returns></returns> public DnDebugEventBreakpoint CreateBreakpoint(DebugEventBreakpointType eventType, IBreakpointCondition bpCond = null) { DebugVerifyThread(); var bp = new DnDebugEventBreakpoint(eventType, bpCond); debugEventBreakpointList.Add(bp); return bp; }
/// <summary> /// Creates a debug event breakpoint /// </summary> /// <param name="eventKind">Debug event</param> /// <param name="cond">Condition</param> /// <returns></returns> public DnDebugEventBreakpoint CreateBreakpoint(DebugEventBreakpointKind eventKind, Func<DebugEventBreakpointConditionContext, bool> cond) { DebugVerifyThread(); var bp = new DnDebugEventBreakpoint(eventKind, cond); debugEventBreakpointList.Add(bp); return bp; }
public DebugEventBreakpointConditionContext(DnDebugger debugger, DnDebugEventBreakpoint bp, DebugCallbackEventArgs e) : base(debugger) { this.bp = bp; this.e = e; }
public void Initialize(DnDebugger dbg) { Debug.Assert(debugger.Dispatcher.CheckAccess()); Debug.Assert(dbgBreakpoint == null); if (dbgBreakpoint != null) throw new InvalidOperationException(); dbgBreakpoint = dbg.CreateBreakpoint(eventKind.ToDebugEventBreakpointKind(), HitHandler); dbgBreakpoint.IsEnabled = isEnabled; dbgBreakpoint.Tag = this; }
public DebugEventBreakpointConditionContext(DnDebugger debugger, DnDebugEventBreakpoint bp, DebugCallbackEventArgs e) : base(debugger) { DebugEventBreakpoint = bp; EventArgs = e; }
public DebugEventBreakpointStopState(DnDebugEventBreakpoint bp) : base(DebuggerStopReason.DebugEventBreakpoint) { this.bp = bp; }