Microsoft.DocAsCode.Metadata.ManagedReference.ConfigFilterRuleItem.IsMatch C# (CSharp) Method

IsMatch() public method

public IsMatch ( ISymbol symbol ) : bool
symbol ISymbol
return bool
        public bool IsMatch(ISymbol symbol)
        {
            if (symbol == null)
            {
                throw new ArgumentNullException("symbol");
            }
            return (_uidRegex == null || _uidRegex.IsMatch(VisitorHelper.GetId(symbol))) &&
                (Kind == null || Kind.Value.Contains(symbol)) &&
                (Attribute == null || Attribute.ContainedIn(symbol));
        }
    }

Usage Example

示例#1
0
        private bool CanVisitCore(IEnumerable <ConfigFilterRuleItemUnion> ruleItems, ISymbol symbol, bool wantProtectedMember, IFilterVisitor outer)
        {
            var current = symbol;
            var parent  = symbol.ContainingSymbol;

            while (!(current is INamespaceSymbol) && parent != null)
            {
                if (!outer.CanVisitApi(parent, wantProtectedMember, outer))
                {
                    return(false);
                }

                current = parent;
                parent  = parent.ContainingSymbol;
            }

            foreach (var ruleUnion in ruleItems)
            {
                ConfigFilterRuleItem rule = ruleUnion.Rule;
                if (rule != null && rule.IsMatch(symbol))
                {
                    return(rule.CanVisit);
                }
            }
            return(true);
        }
All Usage Examples Of Microsoft.DocAsCode.Metadata.ManagedReference.ConfigFilterRuleItem::IsMatch
ConfigFilterRuleItem