1234567891011121314151617181920212223242526272829303132 |
- // Copyright 2024 The Gitea Authors. All rights reserved.
- // SPDX-License-Identifier: MIT
-
- package setting
-
- import "github.com/gobwas/glob"
-
- type GlobMatcher struct {
- compiledGlob glob.Glob
- patternString string
- }
-
- var _ glob.Glob = (*GlobMatcher)(nil)
-
- func (g *GlobMatcher) Match(s string) bool {
- return g.compiledGlob.Match(s)
- }
-
- func (g *GlobMatcher) PatternString() string {
- return g.patternString
- }
-
- func GlobMatcherCompile(pattern string, separators ...rune) (*GlobMatcher, error) {
- g, err := glob.Compile(pattern, separators...)
- if err != nil {
- return nil, err
- }
- return &GlobMatcher{
- compiledGlob: g,
- patternString: pattern,
- }, nil
- }
|