public MonacoCompletionItem(MonacoCompletionItemKind kind, string label, string description, string insertText = default) { this.kind = kind; this.label = label; this.insertText = new MonacoCompletionItemText(insertText ?? label); this.detail = description; }
public static int ToMonacoCompletionItemKind(ImmutableArray <string> completionTags) { const MonacoCompletionItemKind defaultKind = MonacoCompletionItemKind.Text; if (completionTags.Length == 0) { return((int)defaultKind); } if (completionTags.Contains(CompletionTags.Assembly) || completionTags.Contains(CompletionTags.Namespace) || completionTags.Contains(CompletionTags.Project) || completionTags.Contains(CompletionTags.Module)) { return((int)MonacoCompletionItemKind.Module); } if (completionTags.Contains(CompletionTags.Class) || completionTags.Contains(CompletionTags.Structure)) { return((int)MonacoCompletionItemKind.Class); } if (completionTags.Contains(CompletionTags.Constant) || completionTags.Contains(CompletionTags.Field) || completionTags.Contains(CompletionTags.Delegate) || completionTags.Contains(CompletionTags.Event) || completionTags.Contains(CompletionTags.Local)) { return((int)MonacoCompletionItemKind.Field); } if (completionTags.Contains(CompletionTags.Enum) || completionTags.Contains(CompletionTags.EnumMember)) { return((int)MonacoCompletionItemKind.Enum); } if (completionTags.Contains(CompletionTags.Method) || completionTags.Contains(CompletionTags.Operator)) { return((int)MonacoCompletionItemKind.Method); } if (completionTags.Contains(CompletionTags.ExtensionMethod)) { return((int)MonacoCompletionItemKind.Function); } if (completionTags.Contains(CompletionTags.Interface)) { return((int)MonacoCompletionItemKind.Interface); } if (completionTags.Contains(CompletionTags.Property)) { return((int)MonacoCompletionItemKind.Property); } if (completionTags.Contains(CompletionTags.Keyword)) { return((int)MonacoCompletionItemKind.Keyword); } if (completionTags.Contains(CompletionTags.Reference)) { return((int)MonacoCompletionItemKind.Reference); } if (completionTags.Contains(CompletionTags.Snippet)) { return((int)MonacoCompletionItemKind.Snippet); } return((int)defaultKind); }