Exemple #1
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);
        }
Exemple #2
0
        /// <summary>
        ///     Enumerates the code contexts for a given position in a source file.
        /// </summary>
        /// <param name="pDocPos"></param>
        /// <param name="ppEnum"></param>
        /// <returns>If successful, returns S_OK; otherwise, returns an error code.</returns>
        public int EnumCodeContexts(IDebugDocumentPosition2 pDocPos, out IEnumDebugCodeContexts2 ppEnum)
        {
            TEXT_POSITION[] startPosition;
            TEXT_POSITION[] endPosition;
            var             documentName = GetLocationInfo(pDocPos, out startPosition, out endPosition);

            var textPosition = new TEXT_POSITION {
                dwLine = startPosition[0].dwLine + 1
            };
            var documentContext = new MonoDocumentContext(documentName, textPosition, textPosition, null);

            ppEnum = new MonoCodeContextEnumerator(new IDebugCodeContext2[]
                                                   { new MonoMemoryAddress(this, 0, documentContext) });
            return(S_OK);
        }
Exemple #3
0
 /// <summary>
 ///     Retrieves a list of all code contexts associated with this document context.
 /// </summary>
 /// <param name="ppEnumCodeCxts">The enumerator.</param>
 /// <returns>If successful, returns S_OK; otherwise, returns an error code.</returns>
 public int EnumCodeContexts(out IEnumDebugCodeContexts2 ppEnumCodeCxts)
 {
     ppEnumCodeCxts = null;
     try
     {
         var codeContexts = new IDebugCodeContext2[1];
         codeContexts[0] = _address;
         ppEnumCodeCxts  = new MonoCodeContextEnumerator(codeContexts);
         return(S_OK);
     }
     catch (ComponentException e)
     {
         return(e.HResult);
     }
     catch (Exception e)
     {
         return(EngineUtils.UnexpectedException(e));
     }
 }
Exemple #4
0
        public int EnumCodeContexts(out IEnumDebugCodeContexts2 ppEnumCodeCxts)
        {
            ppEnumCodeCxts = new MonoCodeContextEnumerator(new IDebugCodeContext2[] { _memory });

            return(S_OK);
        }