gitee.com/lh-her-team/common@v1.5.1/birdsnest/contains.go (about)

     1  package birdsnest
     2  
     3  // Contains returns whether the filter exists sync
     4  func (b *BirdsNestImpl) Contains(key Key, rules ...RuleType) (bool, error) {
     5  	if key == nil || key.Len() == 0 {
     6  		return false, ErrKeyCannotBeEmpty
     7  	}
     8  	err := b.ValidateRule(key, rules...)
     9  	if err != nil {
    10  		return false, err
    11  	}
    12  	for i := range b.filters {
    13  		contains, err := b.filters[i].Contains(key)
    14  		if err != nil {
    15  			return false, err
    16  		}
    17  		if contains {
    18  			return true, nil
    19  		}
    20  	}
    21  	// Does not exist in any filter
    22  	return false, nil
    23  }