コード例 #1
0
        private void Analyze(string term)
        {
            if (SymbolKindText.IsKnown(term))
            {
                this.SymbolKinds.Add(term);
                return;
            }

            int dot       = term.IndexOf('.');
            int backslash = term.IndexOf('\\');

            if (backslash >= 0 && !this.Paths.Contains(term))
            {
                this.Paths.Add(term);
            }
            else if (dot >= 0 && !this.DotSeparatedNames.Contains(term))
            {
                this.DotSeparatedNames.Add(term);
            }
            else if (!this.Names.Contains(term))
            {
                if (term.Equals(IncludeTrack1ProjectsTerm, StringComparison.OrdinalIgnoreCase))
                {
                    IncludeTrack1Projects = true;
                }
                else if (term.Equals(ExcludeTrack1ProjectsTerm, StringComparison.OrdinalIgnoreCase))
                {
                    IncludeTrack1Projects = false;
                }
                else if (term.Equals(IncludeTrack2ProjectsTerm, StringComparison.OrdinalIgnoreCase))
                {
                    IncludeTrack2Projects = true;
                }
                else if (term.Equals(ExcludeTrack2ProjectsTerm, StringComparison.OrdinalIgnoreCase))
                {
                    IncludeTrack2Projects = false;
                }
                else
                {
                    this.Names.Add(term);
                }
            }
        }
コード例 #2
0
        private bool FilterSymbolKinds(DeclaredSymbolInfo symbol)
        {
            if (!this.SymbolKinds.Any())
            {
                return(true);
            }

            foreach (var symbolKind in this.SymbolKinds)
            {
                if (symbol.Kind == symbolKind)
                {
                    return(true);
                }

                if (symbolKind == SymbolKindText.Type && SymbolKindText.IsType(symbol.Kind))
                {
                    return(true);
                }
            }

            return(false);
        }
コード例 #3
0
        private void Analyze(string term)
        {
            if (SymbolKindText.IsKnown(term))
            {
                this.SymbolKinds.Add(term);
                return;
            }

            int dot       = term.IndexOf('.');
            int backslash = term.IndexOf('\\');

            if (backslash >= 0 && !this.Paths.Contains(term))
            {
                this.Paths.Add(term);
            }
            else if (dot >= 0 && !this.DotSeparatedNames.Contains(term))
            {
                this.DotSeparatedNames.Add(term);
            }
            else if (!this.Names.Contains(term))
            {
                this.Names.Add(term);
            }
        }