// Gets the document that contains this document context.
 // This method is for those debug engines that supply documents directly to the IDE. Since the sample engine
 // does not do this, this method returns E_NOTIMPL.
 int IDebugDocumentContext2.GetDocument(out IDebugDocument2 ppDocument) {
     // Expose document for downloaded modules
     ppDocument = null;
     if (Downloaded) {
         NodeModule module = Module;
         if (module != null) {
             // Lazily create document per module
             ppDocument = (AD7Document)module.Document;
             if (ppDocument == null) {
                 ppDocument = new AD7Document(this);
                 module.Document = ppDocument;
             }
         }
     }
     return ppDocument != null ? VSConstants.S_OK : VSConstants.E_FAIL;
 }
 // Gets the document that contains this document context.
 // This method is for those debug engines that supply documents directly to the IDE. Since the sample engine
 // does not do this, this method returns E_NOTIMPL.
 int IDebugDocumentContext2.GetDocument(out IDebugDocument2 ppDocument)
 {
     // Expose document for downloaded modules
     ppDocument = null;
     if (Downloaded)
     {
         NodeModule module = Module;
         if (module != null)
         {
             // Lazily create document per module
             ppDocument = (AD7Document)module.Document;
             if (ppDocument == null)
             {
                 ppDocument      = new AD7Document(this);
                 module.Document = ppDocument;
             }
         }
     }
     return(ppDocument != null ? VSConstants.S_OK : VSConstants.E_FAIL);
 }