/// <summary> /// Returns information about the specified parameter on the specified method signature. /// </summary> /// <param name="index">An index into the list of method signatures.</param> /// <param name="parameter">An index into the parameter list of the specified method signature.</param> /// <param name="name">Returns the name of the parameter.</param> /// <param name="display">Returns the parameter name and type formatted for display.</param> /// <param name="description">Returns a string containing a description of the parameter.</param> public override void GetParameterInfo(int index, int parameter, out string name, out string display, out string description) { NVMethodNode methodNode = _methodNodes[index]; NVParameterNode parameterNode = methodNode.Parameters[parameter]; NVClassNode classNode = (NVClassNode)methodNode.Parent; name = parameterNode.Name; display = string.Format("{0} {1}", parameterNode.Type.Name, parameterNode.Name); // Retrieve XML documentation XmlDocumentationProvider documentationProvider = new XmlDocumentationProvider(classNode.AssemblyFileName); description = documentationProvider.GetParameterDocumentation( classNode.FullName, methodNode.Name, parameterNode.Name); if (string.IsNullOrEmpty(description)) { description = string.Format("Could not retrieve documentation for parameter '{0}'.", parameterNode.Name); } }