Example #1
0
        public override string GetDescription(int index)
        {
            string description = string.Empty;

            NVIdNode idNode = _declarations[index].IdNode;

            if (idNode is NVClassNode)
            {
                NVClassNode classNode = (NVClassNode)idNode;
                XmlDocumentationProvider documentationProvider =
                    new XmlDocumentationProvider(classNode.AssemblyFileName);
                string classSummary = documentationProvider.GetTypeDocumentation(classNode.FullName);

                if (!string.IsNullOrEmpty(classSummary))
                {
                    description = string.Format("class {0}\n{1}", classNode.FullName, classSummary);
                }
                else
                {
                    description = string.Format("class {0}", classNode.FullName);
                }
            }
            else if (idNode is NVLocalNode)
            {
                NVClassNode classNode = (NVClassNode)idNode.Type;
                if (classNode != null)
                {
                    XmlDocumentationProvider documentationProvider =
                        new XmlDocumentationProvider(classNode.AssemblyFileName);
                    description = documentationProvider.GetTypeDocumentation(classNode.FullName);
                }
            }
            else if (idNode is NVMethodNode)
            {
                NVClassNode classNode = (NVClassNode)((NVMethodNode)idNode).Parent;
                if (classNode != null)
                {
                    XmlDocumentationProvider documentationProvider =
                        new XmlDocumentationProvider(classNode.AssemblyFileName);
                    description = documentationProvider.GetMethodDocumentation(classNode.FullName, idNode.Name);
                }
            }

            // Return the documentation or an error message
            if (!string.IsNullOrEmpty(description))
            {
                return(description);
            }

            return(string.Format("Could not retrieve documentation for AST node '{0}' (because it is not supported).",
                                 idNode != null ? idNode.GetType().Name : ""));
        }
Example #2
0
        public override string GetDescription(int index)
        {
            string description = string.Empty;

            NVIdNode idNode = _declarations[index].IdNode;
            if (idNode is NVClassNode)
            {
                NVClassNode classNode = (NVClassNode)idNode;
                XmlDocumentationProvider documentationProvider =
                    new XmlDocumentationProvider(classNode.AssemblyFileName);
                string classSummary = documentationProvider.GetTypeDocumentation(classNode.FullName);

                if (!string.IsNullOrEmpty(classSummary))
                {
                    description = string.Format("class {0}\n{1}", classNode.FullName, classSummary);
                }
                else
                {
                    description = string.Format("class {0}", classNode.FullName);
                }
            }
            else if (idNode is NVLocalNode)
            {
                NVClassNode classNode = (NVClassNode)idNode.Type;
                if (classNode != null)
                {
                    XmlDocumentationProvider documentationProvider =
                        new XmlDocumentationProvider(classNode.AssemblyFileName);
                    description = documentationProvider.GetTypeDocumentation(classNode.FullName);
                }
            }
            else if (idNode is NVMethodNode)
            {
                NVClassNode classNode = (NVClassNode)((NVMethodNode)idNode).Parent;
                if (classNode != null)
                {
                    XmlDocumentationProvider documentationProvider =
                        new XmlDocumentationProvider(classNode.AssemblyFileName);
                    description = documentationProvider.GetMethodDocumentation(classNode.FullName, idNode.Name);
                }
            }

            // Return the documentation or an error message
            if (!string.IsNullOrEmpty(description))
            {
                return description;
            }

            return string.Format("Could not retrieve documentation for AST node '{0}' (because it is not supported).",
                idNode != null ? idNode.GetType().Name : "");
        }