public void Initialize(DnDebugger dbg) { Debug.Assert(debugger.Dispatcher.CheckAccess()); Debug.Assert(dbgBreakpoint == null); if (dbgBreakpoint != null) throw new InvalidOperationException(); dbgBreakpoint = dbg.CreateAnyDebugEventBreakpoint(HitHandler); dbgBreakpoint.IsEnabled = isEnabled; dbgBreakpoint.Tag = this; }
void CreateStartupAnyDebugBreakEvent(Func <AnyDebugEventBreakpointConditionContext, bool> cond = null) { Debug.Assert(debugger.ProcessState == DebuggerProcessState.Starting); DnAnyDebugEventBreakpoint bp = null; bp = debugger.CreateAnyDebugEventBreakpoint(ctx => { if (cond == null || cond(ctx)) { debugger.RemoveBreakpoint(bp); return(true); } return(false); }); }
/// <summary> /// Creates a debug event breakpoint that gets hit on all debug events /// </summary> /// <param name="bpCond">Condition or null</param> /// <returns></returns> public DnAnyDebugEventBreakpoint CreateAnyDebugEventBreakpoint(IBreakpointCondition bpCond = null) { DebugVerifyThread(); var bp = new DnAnyDebugEventBreakpoint(bpCond); anyDebugEventBreakpointList.Add(bp); return bp; }
public AnyDebugEventBreakpointConditionContext(DnDebugger debugger, DnAnyDebugEventBreakpoint bp, DebugCallbackEventArgs e) : base(debugger) { AnyDebugEventBreakpoint = bp; EventArgs = e; }
public AnyDebugEventBreakpointPauseState(DnAnyDebugEventBreakpoint bp) : base(DebuggerPauseReason.AnyDebugEventBreakpoint) { this.bp = bp; }
/// <summary> /// Creates a debug event breakpoint that gets hit on all debug events /// </summary> /// <param name="cond">Condition</param> /// <returns></returns> public DnAnyDebugEventBreakpoint CreateAnyDebugEventBreakpoint(Func<AnyDebugEventBreakpointConditionContext, bool> cond) { DebugVerifyThread(); var bp = new DnAnyDebugEventBreakpoint(cond); anyDebugEventBreakpointList.Add(bp); return bp; }
public AnyDebugEventBreakpointStopState(DnAnyDebugEventBreakpoint bp) : base(DebuggerStopReason.AnyDebugEventBreakpoint) { this.bp = bp; }