public HQLCompletionProposal(CompletionKind kind, int cursorPosition)
 {
     EntityName = null;
     ShortEntityName = null;
     PropertyName = null;
     CompletionKind = kind;
     CompletionLocation = cursorPosition;
 }
        public CompletionItemKind MapKind(CompletionKind kind)
        {
            switch (kind)
            {
            case CompletionKind.Class:
                return(CompletionItemKind.Class);

            case CompletionKind.Property:
                return(CompletionItemKind.Property);

            case CompletionKind.AttachedProperty:
                return(CompletionItemKind.Property);

            case CompletionKind.StaticProperty:
                return(CompletionItemKind.Property);

            case CompletionKind.Namespace:
                return(CompletionItemKind.Module);

            case CompletionKind.Enum:
                return(CompletionItemKind.Enum);

            case CompletionKind.MarkupExtension:
                return(CompletionItemKind.Function);

            case CompletionKind.Event:
                return(CompletionItemKind.Event);

            case CompletionKind.AttachedEvent:
                return(CompletionItemKind.Event);

            default:
                return(CompletionItemKind.Text);
            }
            ;
        }
Esempio n. 3
0
        private static CodeCompletionKind FromAvaloniaCompletionKind(CompletionKind kind)
        {
            CodeCompletionKind result = CodeCompletionKind.None;

            switch (kind)
            {
            case CompletionKind.Class:
                return(CodeCompletionKind.ClassPublic);

            case CompletionKind.Enum:
                return(CodeCompletionKind.EnumMemberPublic);

            case CompletionKind.Property:
                return(CodeCompletionKind.PropertyPublic);

            case CompletionKind.Namespace:
                return(CodeCompletionKind.NamespacePublic);

            case CompletionKind.MarkupExtension:
                return(CodeCompletionKind.MethodPublic);
            }

            return(result);
        }
        /// <summary>
        /// Returns completion items that match the given kind.
        /// </summary>
        /// <exception cref="ArgumentNullException">Thrown when any argument is null.</exception>
        /// <exception cref="ArgumentException">Thrown when the position is invalid.</exception>
        private static IEnumerable <CompletionItem> GetCompletionsForKind(
            FileContentManager file,
            CompilationUnit compilation,
            Position position,
            CompletionKind kind,
            string namespacePrefix = "")
        {
            if (file == null)
            {
                throw new ArgumentNullException(nameof(file));
            }
            if (compilation == null)
            {
                throw new ArgumentNullException(nameof(compilation));
            }
            if (!Utils.IsValidPosition(position))
            {
                throw new ArgumentException(nameof(position));
            }
            if (kind == null)
            {
                throw new ArgumentNullException(nameof(kind));
            }
            if (namespacePrefix == null)
            {
                throw new ArgumentNullException(nameof(namespacePrefix));
            }

            switch (kind)
            {
            case CompletionKind.Member member:
                return(GetCompletionsForKind(file, compilation, position, member.Item2,
                                             ResolveNamespaceAlias(file, compilation, position, member.Item1)));

            case CompletionKind.Keyword keyword:
                return(new[] { new CompletionItem {
                                   Label = keyword.Item, Kind = CompletionItemKind.Keyword
                               } });
            }
            var currentNamespace = file.TryGetNamespaceAt(position);
            var openNamespaces   =
                namespacePrefix == "" ? GetOpenNamespaces(file, compilation, position) : new[] { namespacePrefix };

            switch (kind.Tag)
            {
            case CompletionKind.Tags.UserDefinedType:
                return
                    (GetTypeCompletions(file, compilation, currentNamespace, openNamespaces)
                     .Concat(GetGlobalNamespaceCompletions(compilation, namespacePrefix))
                     .Concat(GetNamespaceAliasCompletions(file, compilation, position, namespacePrefix)));

            case CompletionKind.Tags.NamedItem:
                return(GetNamedItemCompletions(compilation));

            case CompletionKind.Tags.Namespace:
                return
                    (GetGlobalNamespaceCompletions(compilation, namespacePrefix)
                     .Concat(GetNamespaceAliasCompletions(file, compilation, position, namespacePrefix)));

            case CompletionKind.Tags.Variable:
                return(GetLocalCompletions(file, compilation, position));

            case CompletionKind.Tags.MutableVariable:
                return(GetLocalCompletions(file, compilation, position, mutableOnly: true));

            case CompletionKind.Tags.Callable:
                return
                    (GetCallableCompletions(file, compilation, currentNamespace, openNamespaces)
                     .Concat(GetGlobalNamespaceCompletions(compilation, namespacePrefix))
                     .Concat(GetNamespaceAliasCompletions(file, compilation, position, namespacePrefix)));
            }
            return(Enumerable.Empty <CompletionItem>());
        }
Esempio n. 5
0
        public static TextColor ToTextColor(this CompletionKind kind)
        {
            switch (kind)
            {
            case CompletionKind.Unknown:                            return(TextColor.Text);

            case CompletionKind.ClassProtected:                     return(TextColor.Type);

            case CompletionKind.ClassInternal:                      return(TextColor.Type);

            case CompletionKind.ClassPrivate:                       return(TextColor.Type);

            case CompletionKind.Class:                                      return(TextColor.Type);

            case CompletionKind.ConstantProtected:          return(TextColor.LiteralField);

            case CompletionKind.ConstantInternal:           return(TextColor.LiteralField);

            case CompletionKind.ConstantPrivate:            return(TextColor.LiteralField);

            case CompletionKind.Constant:                           return(TextColor.LiteralField);

            case CompletionKind.DelegateProtected:          return(TextColor.Delegate);

            case CompletionKind.DelegateInternal:           return(TextColor.Delegate);

            case CompletionKind.DelegatePrivate:            return(TextColor.Delegate);

            case CompletionKind.Delegate:                           return(TextColor.Delegate);

            case CompletionKind.EnumProtected:                      return(TextColor.Enum);

            case CompletionKind.EnumInternal:                       return(TextColor.Enum);

            case CompletionKind.EnumPrivate:                        return(TextColor.Enum);

            case CompletionKind.Enum:                                       return(TextColor.Enum);

            case CompletionKind.EventProtected:                     return(TextColor.InstanceEvent);

            case CompletionKind.EventInternal:                      return(TextColor.InstanceEvent);

            case CompletionKind.EventPrivate:                       return(TextColor.InstanceEvent);

            case CompletionKind.Event:                                      return(TextColor.InstanceEvent);

            case CompletionKind.ExtensionMethodProtected: return(TextColor.ExtensionMethod);

            case CompletionKind.ExtensionMethodInternal: return(TextColor.ExtensionMethod);

            case CompletionKind.ExtensionMethodPrivate: return(TextColor.ExtensionMethod);

            case CompletionKind.ExtensionMethod:            return(TextColor.ExtensionMethod);

            case CompletionKind.FieldProtected:                     return(TextColor.InstanceField);

            case CompletionKind.FieldInternal:                      return(TextColor.InstanceField);

            case CompletionKind.FieldPrivate:                       return(TextColor.InstanceField);

            case CompletionKind.Field:                                      return(TextColor.InstanceField);

            case CompletionKind.InterfaceProtected:         return(TextColor.Interface);

            case CompletionKind.InterfaceInternal:          return(TextColor.Interface);

            case CompletionKind.InterfacePrivate:           return(TextColor.Interface);

            case CompletionKind.Interface:                          return(TextColor.Interface);

            case CompletionKind.MethodProtected:            return(TextColor.InstanceMethod);

            case CompletionKind.MethodInternal:                     return(TextColor.InstanceMethod);

            case CompletionKind.MethodPrivate:                      return(TextColor.InstanceMethod);

            case CompletionKind.Method:                                     return(TextColor.InstanceMethod);

            case CompletionKind.ModuleProtected:            return(TextColor.Module);

            case CompletionKind.ModuleInternal:                     return(TextColor.Module);

            case CompletionKind.ModulePrivate:                      return(TextColor.Module);

            case CompletionKind.Module:                                     return(TextColor.Module);

            case CompletionKind.OperatorProtected:          return(TextColor.Operator);

            case CompletionKind.OperatorInternal:           return(TextColor.Operator);

            case CompletionKind.OperatorPrivate:            return(TextColor.Operator);

            case CompletionKind.Operator:                           return(TextColor.Operator);

            case CompletionKind.PropertyProtected:          return(TextColor.InstanceProperty);

            case CompletionKind.PropertyInternal:           return(TextColor.InstanceProperty);

            case CompletionKind.PropertyPrivate:            return(TextColor.InstanceProperty);

            case CompletionKind.Property:                           return(TextColor.InstanceProperty);

            case CompletionKind.StructureProtected:         return(TextColor.ValueType);

            case CompletionKind.StructureInternal:          return(TextColor.ValueType);

            case CompletionKind.StructurePrivate:           return(TextColor.ValueType);

            case CompletionKind.Structure:                          return(TextColor.ValueType);

            case CompletionKind.FileCSharp:                         return(TextColor.Text);

            case CompletionKind.FileVisualBasic:            return(TextColor.Text);

            case CompletionKind.ProjectCSharp:                      return(TextColor.Text);

            case CompletionKind.ProjectVisualBasic:         return(TextColor.Text);

            case CompletionKind.EnumMember:                         return(TextColor.EnumField);

            case CompletionKind.Assembly:                           return(TextColor.Assembly);

            case CompletionKind.RangeVariable:                      return(TextColor.Parameter);

            case CompletionKind.Local:                                      return(TextColor.Local);

            case CompletionKind.Parameter:                          return(TextColor.Parameter);

            case CompletionKind.Intrinsic:                          return(TextColor.Keyword);

            case CompletionKind.Keyword:                            return(TextColor.Keyword);

            case CompletionKind.Label:                                      return(TextColor.Label);

            case CompletionKind.Namespace:                          return(TextColor.Namespace);

            case CompletionKind.Folder:                                     return(TextColor.Text);

            case CompletionKind.Reference:                          return(TextColor.Assembly);

            case CompletionKind.TypeParameter:                      return(TextColor.TypeGenericParameter);

            case CompletionKind.Snippet:                            return(TextColor.Text);

            case CompletionKind.StatusError:                        return(TextColor.Error);

            case CompletionKind.StatusWarning:                      return(TextColor.Text);

            case CompletionKind.StatusInformation:          return(TextColor.Text);

            default: return(TextColor.Text);
            }
        }
Esempio n. 6
0
 public Completion(string insertText, CompletionKind kind) : this(insertText, insertText, insertText, kind)
 {
 }
 protected BaseCompletionProvider(CompletionKind kind, string inlineDescription)
 {
     _kind = kind;
     _inlineDescription = inlineDescription;
 }
Esempio n. 8
0
 public CompletionItem WithKind(CompletionKind kind)
 {
     return(new CompletionItem(kind, this.DisplayText, this.EditText, this.AfterText, this.MatchText, this.Priority));
 }
Esempio n. 9
0
 protected SpecificInvocationCompletionProvider(IEnumerable <ExpectedInvocation> expectedInvocations, CompletionKind kind, string inlineDescription) : base(kind, inlineDescription)
 {
     _expectedInvocations = expectedInvocations;
 }