コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        /// <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);
        }
コード例 #4
0
 public MonoDocumentContext(TextPositionInfo info, MonoMemoryContext memory)
 {
     _info   = info;
     _memory = memory;
 }