private ICompletionData CompletionData(IEntity entity) { ICompletionData completionData = null; if (entity.Documentation != null) { completionData = new CompletionData(_signature, _completionText, _signature + Environment.NewLine + DocumentationConverter.ConvertDocumentation(entity.Documentation)); } else { var ambience = new CSharpAmbience { ConversionFlags = ConversionFlags.ShowParameterList | ConversionFlags.ShowParameterNames | ConversionFlags.ShowReturnType | ConversionFlags.ShowBody | ConversionFlags.ShowTypeParameterList }; var documentationSignature = ambience.ConvertEntity(entity); if (_wantDocumentation) { string documentation = new DocumentationFetcher().GetDocumentation(_project, entity); var documentationAndSignature = documentationSignature + Environment.NewLine + documentation; completionData = new CompletionData(_signature, _completionText, documentationAndSignature); } else { completionData = new CompletionData(_signature, _completionText, documentationSignature); } } return completionData; }
private ICompletionData CompletionData(IEntity entity) { ICompletionData completionData = null; if (entity.Documentation != null) { completionData = new CompletionData(_signature, _completionText, _signature + Environment.NewLine + CodeCompletionItemProvider.ConvertDocumentation(entity.Documentation)); } else { XmlDocumentationProvider docProvider = null; if (entity.ParentAssembly.AssemblyName != null) { docProvider = XmlDocumentationProviderFactory.Get(entity.ParentAssembly.AssemblyName); } if (docProvider != null) { DocumentationComment documentationComment = docProvider.GetDocumentation(entity); if (documentationComment != null) { var documentation = _signature + Environment.NewLine + CodeCompletionItemProvider.ConvertDocumentation( documentationComment.Xml.Text); completionData = new CompletionData(_signature, _completionText, documentation); } else { completionData = new CompletionData(_signature, _completionText, "No documentation"); } } else { completionData = new CompletionData(_signature, _completionText, _signature); } } return completionData; }
public ICompletionData CreateTypeCompletionData(IType type, bool showFullName, bool isInAttributeContext) { var completion = new CompletionData(type.Name); foreach (var constructor in type.GetConstructors()) { completion.AddOverload(CreateEntityCompletionData(constructor)); } return completion; }
private ICompletionData CompletionData(IEntity entity) { ICompletionData completionData = null; if (entity.Documentation != null) { completionData = new CompletionData(_signature, _completionText, _signature + Environment.NewLine + DocumentationConverter.ConvertDocumentation(entity.Documentation)); } else { IDocumentationProvider docProvider = null; if (entity.ParentAssembly.AssemblyName != null) { docProvider = XmlDocumentationProviderFactory.Get(entity.ParentAssembly.AssemblyName); } var ambience = new CSharpAmbience { ConversionFlags = ConversionFlags.ShowParameterList | ConversionFlags.ShowParameterNames | ConversionFlags.ShowReturnType | ConversionFlags.ShowBody | ConversionFlags.ShowTypeParameterList }; var documentationSignature = ambience.ConvertEntity(entity); if (docProvider != null) { DocumentationComment documentationComment = docProvider.GetDocumentation(entity); if (documentationComment != null) { var documentation = documentationSignature + Environment.NewLine + DocumentationConverter.ConvertDocumentation( documentationComment.Xml.Text); completionData = new CompletionData(_signature, _completionText, documentation); } else { completionData = new CompletionData(_signature, _completionText, documentationSignature); } } else { completionData = new CompletionData(_signature, _completionText, documentationSignature); } } return completionData; }
private void AddMethodHeader(CompletionData completionData, IMethod method) { var methodDefinition = method.MemberDefinition; if (_wantMethodHeader) { var snippetGenerator = new SnippetGenerator(false); completionData.MethodHeader = snippetGenerator.Generate(methodDefinition); } if (_wantSnippet) { var snippetGenerator = new SnippetGenerator(true); completionData.Snippet = snippetGenerator.Generate(methodDefinition); } if (_wantReturnType) { var returnTypeAmbience = new CSharpAmbience { ConversionFlags = ConversionFlags.ShowReturnType }; completionData.ReturnType = returnTypeAmbience.ConvertSymbol(method).Split(' ').First(); } }
public ICompletionData CreateTypeCompletionData(IType type, bool showFullName, bool isInAttributeContext, bool addForTypeCreation) { if (!type.Name.IsValidCompletionFor(_partialWord)) { return new CompletionData("~~"); } CompletionData completion; if (_instantiating) { completion = new CompletionData(type.Name); foreach (var constructor in type.GetConstructors()) { if (type.TypeParameterCount > 0) { GenerateGenericMethodSignature(constructor); ICompletionData completionData = CompletionData(constructor); AddMethodHeader(completionData as CompletionData, constructor); completion.AddOverload(completionData); } else { var entityCompletionData = CreateEntityCompletionData(constructor); AddMethodHeader(entityCompletionData as CompletionData, constructor); completion.AddOverload(entityCompletionData); } AddMethodHeader(completion, constructor); } } else { var name = type.Name; if (type.TypeParameterCount > 0) { name += "<"; } completion = new CompletionData(name); completion.AddOverload(completion); } return completion; }
public ICompletionData CreateTypeCompletionData(IType type, bool showFullName, bool isInAttributeContext) { if (!type.Name.IsValidCompletionFor(_partialWord)) { return new CompletionData("~~"); } var completion = new CompletionData(type.Name); if (_instantiating) { foreach (var constructor in type.GetConstructors()) { if (type.TypeParameterCount > 0) { GenerateGenericMethodSignature(constructor); ICompletionData completionData = CompletionData(constructor); completion.AddOverload(completionData); } else { completion.AddOverload(CreateEntityCompletionData(constructor)); } } } else { completion.AddOverload(completion); } return completion; }
public ICompletionData CreateVariableCompletionData(IVariable variable) { var completionData = new CompletionData(variable.Name); if (_wantReturnType) { completionData.ReturnType = _returnTypeAmbience.ConvertSymbol(variable); } return completionData; }
private ICompletionData CompletionData(IEntity entity) { ICompletionData completionData; if (entity.Documentation != null) { completionData = new CompletionData(_signature, _completionText, _signature + _config.TextEditorOptions.EolMarker + DocumentationConverter.ConvertDocumentation(entity.Documentation, _config)); } else { var ambience = new CSharpAmbience { ConversionFlags = ConversionFlags.ShowParameterList | ConversionFlags.ShowParameterNames | ConversionFlags.ShowReturnType | ConversionFlags.ShowBody | ConversionFlags.ShowTypeParameterList }; var documentationSignature = ambience.ConvertSymbol(entity); if (_wantDocumentation) { string documentation = new DocumentationFetcher().GetDocumentation(_project, entity, _config); var documentationAndSignature = documentationSignature + _config.TextEditorOptions.EolMarker + documentation; completionData = new CompletionData(_signature, _completionText, documentationAndSignature); } else { completionData = new CompletionData(_signature, _completionText, documentationSignature); } } return completionData; }
private void AddMethodHeader(CompletionData completionData, IMethod method) { var methodDefinition = method.MemberDefinition; if (_wantMethodHeader) { var snippetGenerator = new SnippetGenerator(false); completionData.MethodHeader = snippetGenerator.Generate(methodDefinition); } if (_wantSnippet) { var snippetGenerator = new SnippetGenerator(true); completionData.Snippet = snippetGenerator.Generate(methodDefinition); } if (_wantReturnType) { completionData.ReturnType = _returnTypeAmbience.ConvertSymbol(method); } }