public Breakpoint CreateBreakpoint(TextPositionInfo position, MonoPendingBreakpoint bp) { Breakpoint point = _engine.SoftDebugger.Breakpoints.Add(position.FilePath, position.StartLine, position.StartColumn); _breakpoints.Add(point, bp); return(point); }
public int EnumCodeContexts(IDebugDocumentPosition2 pDocPos, out IEnumDebugCodeContexts2 ppEnum) { TextPositionInfo posInfo = new TextPositionInfo(pDocPos); MonoDocumentContext docCtx = new MonoDocumentContext(posInfo, null); MonoMemoryContext memoryCtx = new MonoMemoryContext(docCtx, 0); ppEnum = new MonoCodeContextEnumerator(new IDebugCodeContext2[] { memoryCtx }); return(S_OK); }
/// <summary> /// /// </summary> /// <returns></returns> public int Bind() { _position = new TextPositionInfo(_requestInfo); _position.FixPosition(); _monoBreakpoint = _engine.BreakpointManager.CreateBreakpoint(_position, this); SetCondition(_requestInfo.bpCondition); SetPassCount(_requestInfo.bpPassCount); if (!_enabled) { _monoBreakpoint.Enabled = true; _enabled = true; } MonoDocumentContext docCtx = new MonoDocumentContext(_position, new Debugging.MonoMemoryContext(null, 0)); _boundBreakpoint = new MonoBoundBreakpoint(this, new MonoBreakpointResolution(0, docCtx)); _engine.Callback.OnBreakpointBound(this); return(S_OK); }
public MonoDocumentContext(TextPositionInfo info, MonoMemoryContext memory) { _info = info; _memory = memory; }