All classes:
- pathspec.backend._Backend
- pathspec.pattern.Pattern
- pathspec.pattern.RegexPattern
- pathspec.pattern.RegexMatchResult
- pathspec.patterns.gitignore.base._GitIgnoreBasePattern
- pathspec.patterns.gitignore.base.GitIgnorePatternError
- pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern
- pathspec.util.AlreadyRegisteredError
- pathspec.util.RecursionError
- pathspec.util.CheckResult
- pathspec.util.MatchDetail
- pathspec.util.TreeEntry
- pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern
- pathspec.patterns.gitwildmatch.GitWildMatchPattern
- pathspec._backends.hyperscan._base.HyperscanExprDat
- pathspec._backends.hyperscan._base.HyperscanExprDebug
- pathspec._backends.hyperscan.pathspec.HyperscanPsBackend
- pathspec._backends.hyperscan.gitignore.HyperscanGiBackend
- pathspec._backends.re2._base.Re2RegexDat
- pathspec._backends.re2._base.Re2RegexDebug
- pathspec._backends.re2.pathspec.Re2PsBackend
- pathspec._backends.re2.gitignore.Re2GiBackend
- pathspec._backends.simple.pathspec.SimplePsBackend
- pathspec._backends.simple.gitignore.SimpleGiBackend
- pathspec.pathspec.PathSpec
- pathspec.gitignore.GitIgnoreSpec
All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: '...fuzz_pathspec'
    functionSourceFile: '...fuzz_pathspec'
    functionUses: 0
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    - '...fuzz_pathspec.main'
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 21
    functionName: '...fuzz_pathspec.test_raw'
    functionSourceFile: '...fuzz_pathspec'
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec.pathspec.PathSpec.__init__
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - fdp.ConsumeIntInRange
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - pathspec.pathspec.PathSpec.from_lines
    - pathspec.util._is_iterable
    - out_patterns.reverse
    - regex_data.append
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - lines.append
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.callable
    - spec.match_files
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - pathspec.util.lookup_pattern
    - regex.decode
    - patterns.keys
    - regex_str.endswith
    - regex_str.replace
    - typing.cast
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.FuzzedDataProvider
    functionSourceFile: atheris
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeIntInRange
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.range
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: fdp.ConsumeUnicodeNoSurrogates
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: lines.append
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 5
    argDefaultValues: []
    argNames:
    - cls
    - pattern_factory
    - lines
    - backend
    - _test_backend_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 6
    functionLinenumber: 221
    functionName: pathspec.pathspec.PathSpec.from_lines
    functionSourceFile: pathspec.pathspec
    functionUses: 3
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec.pathspec.PathSpec.__init__
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - pathspec.util._is_iterable
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.callable
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - pathspec.util.lookup_pattern
    - regex.decode
    - patterns.keys
    - regex_str.endswith
    - regex_str.replace
    - typing.cast
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: spec.match_files
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 7
    functionLinenumber: 34
    functionName: '...fuzz_pathspec.test_git'
    functionSourceFile: '...fuzz_pathspec'
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec.pathspec.PathSpec.__init__
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - fdp.ConsumeIntInRange
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - pathspec.pathspec.PathSpec.from_lines
    - pathspec.util._is_iterable
    - out_patterns.reverse
    - regex_data.append
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - lines.append
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.callable
    - spec.match_files
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - pathspec.util.lookup_pattern
    - regex.decode
    - patterns.keys
    - regex_str.endswith
    - regex_str.replace
    - typing.cast
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - data
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 8
    functionLinenumber: 49
    functionName: '...fuzz_pathspec.TestOneInput'
    functionSourceFile: '...fuzz_pathspec'
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec.pathspec.PathSpec.__init__
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - fdp.ConsumeIntInRange
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - pathspec.pathspec.PathSpec.from_lines
    - pathspec.util._is_iterable
    - out_patterns.reverse
    - regex_data.append
    - atheris.FuzzedDataProvider
    - fdp.ConsumeUnicodeNoSurrogates
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - lines.append
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.callable
    - spec.match_files
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - '...fuzz_pathspec.test_raw'
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - pathspec.util.lookup_pattern
    - regex.decode
    - patterns.keys
    - regex_str.endswith
    - regex_str.replace
    - typing.cast
    - '...fuzz_pathspec.test_git'
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 54
    functionName: '...fuzz_pathspec.main'
    functionSourceFile: '...fuzz_pathspec'
    functionUses: 1
    functionsReached:
    - atheris.Setup
    - atheris.Fuzz
    - atheris.instrument_all
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.instrument_all
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Setup
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: atheris.Fuzz
    functionSourceFile: atheris
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec
    functionSourceFile: pathspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._meta
    functionSourceFile: pathspec._meta
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.gitignore
    functionSourceFile: pathspec.gitignore
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.TypeVar
    functionSourceFile: typing
    functionUses: 6
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 53
    functionName: pathspec.gitignore.GitIgnoreSpec.__eq__
    functionSourceFile: pathspec.gitignore
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.isinstance
    functionSourceFile: <builtin>
    functionUses: 37
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.super
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.gitignore.GitIgnoreSpec
    functionSourceFile: pathspec.gitignore
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    - typing.overload
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.overload
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 8
    ICount: 1
    IfCount: 5
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f117e917340>
    argNames:
    - cls
    - lines
    - pattern_factory
    - backend
    - _test_backend_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 93
    functionName: pathspec.gitignore.GitIgnoreSpec.from_lines
    functionSourceFile: pathspec.gitignore
    functionUses: 0
    functionsReached:
    - <builtin>.issubclass
    - pathspec.util._is_iterable
    - <builtin>.callable
    - typing.cast
    - <builtin>.isinstance
    - <builtin>.super
    - pathspec.util.lookup_pattern
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.override
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing_extensions.override
    functionSourceFile: ''
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.callable
    functionSourceFile: <builtin>
    functionUses: 15
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - value
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 184
    functionName: pathspec.util._is_iterable
    functionSourceFile: pathspec.util
    functionUses: 12
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - name
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 414
    functionName: pathspec.util.lookup_pattern
    functionSourceFile: ''
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.issubclass
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing.cast
    functionSourceFile: typing
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - patterns
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 146
    functionName: pathspec.gitignore.GitIgnoreSpec._make_backend
    functionSourceFile: pathspec.gitignore
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pathspec._backends._utils.enumerate_patterns
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__init__
    - use_regexes.append
    - pathspec._backends.agg.make_gitignore_backend
    - pathspec._backends.simple.gitignore.SimpleGiBackend.__init__
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - regex_set.Add
    - <builtin>.len
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - regex_set.Compile
    - <builtin>.enumerate
    - re2.Set.SearchSet
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - patterns
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 51
    functionName: pathspec._backends.agg.make_gitignore_backend
    functionSourceFile: pathspec._backends.agg
    functionUses: 1
    functionsReached:
    - <builtin>.dict
    - pathspec._backends._utils.enumerate_patterns
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__init__
    - use_regexes.append
    - pathspec._backends.simple.gitignore.SimpleGiBackend.__init__
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - regex_set.Add
    - <builtin>.len
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - regex_set.Compile
    - <builtin>.enumerate
    - re2.Set.SearchSet
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - typing.cast
    - <builtin>.super
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.pathspec
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 4
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - backend
    - _test_backend_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 51
    functionName: pathspec.pathspec.PathSpec.__init__
    functionSourceFile: pathspec.pathspec
    functionUses: 4
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - typing.cast
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.list
    functionSourceFile: <builtin>
    functionUses: 17
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - patterns
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 262
    functionName: pathspec.pathspec.PathSpec._make_backend
    functionSourceFile: pathspec.pathspec
    functionUses: 6
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - pathspec._backends.agg.make_pathspec_backend
    - typing.cast
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 99
    functionName: pathspec.pathspec.PathSpec.__add__
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 109
    functionName: pathspec.pathspec.PathSpec.__eq__
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.all
    - itertools.zip_longest
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: itertools.zip_longest
    functionSourceFile: itertools
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.all
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 5
    functionLinenumber: 120
    functionName: pathspec.pathspec.PathSpec.__iadd__
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - typing.cast
    - pathspec._backends.agg.make_pathspec_backend
    - pathspec.pathspec.PathSpec._make_backend
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 132
    functionName: pathspec.pathspec.PathSpec.__len__
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - <builtin>.len
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.len
    functionSourceFile: <builtin>
    functionUses: 23
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e952f10>
    argNames:
    - self
    - file
    - separators
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 139
    functionName: pathspec.pathspec.PathSpec.check_file
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - pathspec.util.normalize_file
    - file.encode
    - match.match.groupdict
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - pattern.match_file
    - <builtin>.max
    - db.scan
    - os.fspath
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f117e1b55e0>
    argNames:
    - file
    - separators
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 479
    functionName: pathspec.util.normalize_file
    functionSourceFile: pathspec.util
    functionUses: 10
    functionsReached:
    - norm_file.startswith
    - os.fspath
    - norm_file.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 166
    functionName: pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 9
    functionsReached:
    - <builtin>.max
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 194
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 9
    functionsReached:
    - db.scan
    - file.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 1
    IfCount: 6
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    functionSourceFile: pathspec._backends.simple.gitignore
    functionUses: 9
    functionsReached:
    - pattern.match_file
    - match.match.groupdict
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 134
    functionName: pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    functionSourceFile: ''
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 183
    functionName: pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 9
    functionsReached:
    - db.scan
    - file.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e15ed00>
    argNames:
    - self
    - files
    - separators
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 160
    functionName: pathspec.pathspec.PathSpec.check_files
    functionSourceFile: pathspec.pathspec
    functionUses: 1
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - pathspec.util.normalize_file
    - file.encode
    - match.match.groupdict
    - pathspec.util._is_iterable
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - pattern.match_file
    - <builtin>.max
    - <builtin>.isinstance
    - db.scan
    - os.fspath
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f117e1106d0>
    - <ast.Constant object at 0x7f117e110a00>
    argNames:
    - self
    - root
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 187
    functionName: pathspec.pathspec.PathSpec.check_tree_files
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec.util.normalize_file
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - node_ent.is_dir
    - os.fspath
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    - os.scandir
    - pathspec.util._is_iterable
    - pattern.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - <builtin>.callable
    - node_ent.is_file
    - <builtin>.max
    - <builtin>.isinstance
    - pathspec.pathspec.PathSpec.check_files
    - pathspec.util.iter_tree_files
    - pathspec.util._iter_tree_files_next
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - node_ent.is_symlink
    - file.encode
    - match.match.groupdict
    - db.scan
    - os.path.abspath
    - os.path.join
    - os.path.realpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e168910>
    - <ast.Constant object at 0x7f117e168ee0>
    argNames:
    - root
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 318
    functionName: pathspec.util.iter_tree_files
    functionSourceFile: pathspec.util
    functionUses: 4
    functionsReached:
    - os.scandir
    - <builtin>.callable
    - node_ent.is_file
    - os.path.abspath
    - node_ent.is_dir
    - pathspec.util._iter_tree_files_next
    - os.path.join
    - os.path.realpath
    - node_ent.is_symlink
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 1
    IfCount: 4
    argCount: 2
    argDefaultValues: []
    argNames:
    - name
    - patterns
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 79
    functionName: pathspec._backends.agg.make_pathspec_backend
    functionSourceFile: pathspec._backends.agg
    functionUses: 7
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - regex_set.Add
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - <builtin>.len
    - hyperscan.Database
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex_set.Compile
    - regex.encode
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    - typing.cast
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f117e102fa0>
    argNames:
    - self
    - entries
    - separators
    - negate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 281
    functionName: pathspec.pathspec.PathSpec.match_entries
    functionSourceFile: pathspec.pathspec
    functionUses: 1
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - pathspec.util.normalize_file
    - file.encode
    - match.match.groupdict
    - pathspec.util._is_iterable
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - pattern.match_file
    - <builtin>.max
    - <builtin>.isinstance
    - db.scan
    - os.fspath
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e6b12e0>
    argNames:
    - self
    - file
    - separators
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 319
    functionName: pathspec.pathspec.PathSpec.match_file
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - pathspec.util.normalize_file
    - file.encode
    - match.match.groupdict
    - <builtin>.bool
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - pattern.match_file
    - <builtin>.max
    - db.scan
    - os.fspath
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.bool
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 2
    IfCount: 3
    argCount: 4
    argDefaultValues:
    - <ast.Constant object at 0x7f117e23a280>
    argNames:
    - self
    - files
    - separators
    - negate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 340
    functionName: pathspec.pathspec.PathSpec.match_files
    functionSourceFile: pathspec.pathspec
    functionUses: 2
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - pathspec.util.normalize_file
    - file.encode
    - match.match.groupdict
    - pathspec.util._is_iterable
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - pattern.match_file
    - <builtin>.max
    - <builtin>.isinstance
    - db.scan
    - os.fspath
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f117e1644c0>
    - <ast.Constant object at 0x7f117e164250>
    argNames:
    - self
    - root
    - on_error
    - follow_links
    - negate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 379
    functionName: pathspec.pathspec.PathSpec.match_tree_entries
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec.util.normalize_file
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - node_ent.is_dir
    - os.fspath
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    - os.scandir
    - pathspec.util._is_iterable
    - pattern.match_file
    - node_ent.stat
    - pathspec.util.TreeEntry.__init__
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - <builtin>.callable
    - node_ent.is_file
    - <builtin>.max
    - <builtin>.isinstance
    - pathspec.util._iter_tree_entries_next
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - node_ent.is_symlink
    - file.encode
    - pathspec.util.iter_tree_entries
    - match.match.groupdict
    - pathspec.pathspec.PathSpec.match_entries
    - db.scan
    - os.path.abspath
    - os.path.join
    - os.path.realpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    IfCount: 2
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e69a700>
    - <ast.Constant object at 0x7f117e69a310>
    argNames:
    - root
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 206
    functionName: pathspec.util.iter_tree_entries
    functionSourceFile: pathspec.util
    functionUses: 1
    functionsReached:
    - os.scandir
    - <builtin>.callable
    - node_ent.is_file
    - os.path.abspath
    - node_ent.is_dir
    - pathspec.util._iter_tree_entries_next
    - node_ent.stat
    - os.path.join
    - os.path.realpath
    - node_ent.is_symlink
    - pathspec.util.TreeEntry.__init__
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.deprecated
    functionSourceFile: warnings
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.pathspec.PathSpec
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._typing.deprecated.decorator
    - functools.wraps
    - warnings.deprecated
    - typing_extensions.deprecated
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: typing_extensions.deprecated
    functionSourceFile: typing_extensions
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 40
    functionName: pathspec._typing.deprecated.decorator
    functionSourceFile: pathspec._typing
    functionUses: 4
    functionsReached:
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 4
    functionLinenumber: 418
    functionName: pathspec.pathspec.PathSpec.match_tree
    functionSourceFile: pathspec.pathspec
    functionUses: 0
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec.util.normalize_file
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - node_ent.is_dir
    - os.fspath
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    - os.scandir
    - pathspec.util._is_iterable
    - pattern.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - <builtin>.callable
    - node_ent.is_file
    - <builtin>.max
    - <builtin>.isinstance
    - pathspec.util.iter_tree_files
    - pathspec.util._iter_tree_files_next
    - pathspec.pathspec.PathSpec.match_files
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - node_ent.is_symlink
    - file.encode
    - match.match.groupdict
    - db.scan
    - os.path.abspath
    - pathspec.pathspec.PathSpec.match_tree_files
    - os.path.join
    - os.path.realpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 5
    argDefaultValues:
    - <ast.Constant object at 0x7f117e2a0ee0>
    - <ast.Constant object at 0x7f117e2a0c70>
    argNames:
    - self
    - root
    - on_error
    - follow_links
    - negate
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 426
    functionName: pathspec.pathspec.PathSpec.match_tree_files
    functionSourceFile: pathspec.pathspec
    functionUses: 1
    functionsReached:
    - pathspec._backends.re2.pathspec.Re2PsBackend.match_file
    - pathspec.util.normalize_file
    - pathspec._backends.simple.gitignore.SimpleGiBackend.match_file
    - node_ent.is_dir
    - os.fspath
    - norm_file.replace
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file
    - os.scandir
    - pathspec.util._is_iterable
    - pattern.match_file
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file
    - <builtin>.callable
    - node_ent.is_file
    - <builtin>.max
    - <builtin>.isinstance
    - pathspec.util.iter_tree_files
    - pathspec.util._iter_tree_files_next
    - pathspec.pathspec.PathSpec.match_files
    - pathspec._backends.re2.gitignore.Re2GiBackend.match_file
    - norm_file.startswith
    - node_ent.is_symlink
    - file.encode
    - match.match.groupdict
    - db.scan
    - os.path.abspath
    - os.path.join
    - os.path.realpath
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.pattern
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - include
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 38
    functionName: pathspec.pattern.Pattern.__init__
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.pattern.Pattern
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - pathspec._typing.deprecated.decorator
    - functools.wraps
    - warnings.deprecated
    - typing_extensions.deprecated
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - files
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: pathspec.pattern.Pattern.match
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - pathspec.pattern.Pattern.match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 76
    functionName: pathspec.pattern.Pattern.match_file
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e2a1790>
    argNames:
    - self
    - pattern
    - include
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 101
    functionName: pathspec.pattern.RegexPattern.__init__
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - <builtin>.hasattr
    - <builtin>.isinstance
    - <builtin>.super
    - pathspec.pattern.RegexPattern.pattern_to_regex
    - re.compile
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - pattern
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 200
    functionName: pathspec.pattern.RegexPattern.pattern_to_regex
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.compile
    functionSourceFile: re
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.hasattr
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 160
    functionName: pathspec.pattern.RegexPattern.__copy__
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - other
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 170
    functionName: pathspec.pattern.RegexPattern.__eq__
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.pattern.RegexPattern
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 182
    functionName: pathspec.pattern.RegexPattern.match_file
    functionSourceFile: pathspec.pattern
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._typing
    functionSourceFile: pathspec._typing
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - category
    - stacklevel
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 34
    functionName: pathspec._typing.deprecated
    functionSourceFile: pathspec._typing
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: functools.wraps
    functionSourceFile: functools
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - a
    - k
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 42
    functionName: pathspec._typing.deprecated.decorator.wrapper
    functionSourceFile: pathspec._typing
    functionUses: 0
    functionsReached:
    - warnings.warn
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: warnings.warn
    functionSourceFile: warnings
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - f
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 54
    functionName: pathspec._typing.override
    functionSourceFile: pathspec._typing
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - message
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 58
    functionName: pathspec._typing.assert_unreachable
    functionSourceFile: pathspec._typing
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - AssertionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.agg
    functionSourceFile: pathspec._backends.agg
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - _debug_exprs
    - _test_sort
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 50
    functionName: pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__init__
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    IfCount: 2
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - _debug_regex
    - _test_sort
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 44
    functionName: pathspec._backends.re2.pathspec.Re2PsBackend.__init__
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 10
    functionsReached:
    - <builtin>.dict
    - pathspec._backends._utils.enumerate_patterns
    - use_regexes.append
    - out_patterns.reverse
    - regex_data.append
    - pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    - pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    - regex_set.Add
    - <builtin>.len
    - pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    - <builtin>.bool
    - <builtin>.list
    - <builtin>.isinstance
    - regex_set.Compile
    - re2.Set.SearchSet
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - patterns.keys
    - regex_str.replace
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - no_filter
    - no_reverse
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 33
    functionName: pathspec._backends.simple.gitignore.SimpleGiBackend.__init__
    functionSourceFile: pathspec._backends.simple.gitignore
    functionUses: 2
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - _debug_exprs
    - _test_sort
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 46
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 8
    functionsReached:
    - <builtin>.dict
    - pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    - pathspec._backends._utils.enumerate_patterns
    - <builtin>.range
    - db.compile
    - exprs.append
    - use_regexes.append
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    - pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    - out_patterns.reverse
    - hyperscan.Database
    - <builtin>.len
    - <builtin>.bool
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - regex.encode
    - <builtin>.enumerate
    - regex_str.endswith
    - regex.decode
    - regex_str.replace
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 3
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - patterns
    - no_filter
    - no_reverse
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 32
    functionName: pathspec._backends.simple.pathspec.SimplePsBackend.__init__
    functionSourceFile: pathspec._backends.simple.pathspec
    functionUses: 8
    functionsReached:
    - pathspec._backends._utils.enumerate_patterns
    - out_patterns.reverse
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.simple
    functionSourceFile: pathspec._backends.simple
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec.backend
    functionSourceFile: pathspec.backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 27
    functionName: pathspec.backend._Backend.match_file
    functionSourceFile: pathspec.backend
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised:
    - NotImplementedError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan
    functionSourceFile: pathspec._backends.hyperscan
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.re2
    functionSourceFile: pathspec._backends.re2
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan.base
    functionSourceFile: pathspec._backends.hyperscan.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.simple.gitignore
    functionSourceFile: pathspec._backends.simple.gitignore
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.simple.gitignore.SimpleGiBackend
    functionSourceFile: pathspec._backends.simple.gitignore
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.match_file
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: match.match.groupdict
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.simple.pathspec
    functionSourceFile: pathspec._backends.simple.pathspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 3
    argDefaultValues: []
    argNames:
    - patterns
    - filter
    - reverse
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 19
    functionName: pathspec._backends._utils.enumerate_patterns
    functionSourceFile: pathspec._backends._utils
    functionUses: 13
    functionsReached:
    - out_patterns.reverse
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.simple.pathspec.SimplePsBackend
    functionSourceFile: pathspec._backends.simple.pathspec
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 66
    functionName: pathspec._backends.simple.pathspec.SimplePsBackend.match_file
    functionSourceFile: pathspec._backends.simple.pathspec
    functionUses: 0
    functionsReached:
    - pattern.match_file
    - pathspec.util.check_match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e9176a0>
    argNames:
    - patterns
    - file
    - is_reversed
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 74
    functionName: pathspec.util.check_match_file
    functionSourceFile: pathspec.util
    functionUses: 1
    functionsReached:
    - pattern.match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends._utils
    functionSourceFile: pathspec._backends._utils
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.enumerate
    functionSourceFile: <builtin>
    functionUses: 19
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_patterns.reverse
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.util
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - typing.TypeVar
    - warnings.deprecated
    - pathspec._typing.deprecated.decorator
    - typing_extensions.deprecated
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 1
    argDefaultValues: []
    argNames:
    - path
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 57
    functionName: pathspec.util.append_dir_sep
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - <builtin>.str
    - path.is_dir
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.str
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: path.is_dir
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 2
    IfCount: 4
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e8f1bb0>
    argNames:
    - patterns
    - files
    - all_matches
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 118
    functionName: pathspec.util.detailed_match_files
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pattern.match
    - pathspec.util.MatchDetail.__init__
    - <builtin>.list
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.match
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 2
    argDefaultValues: []
    argNames:
    - self
    - patterns
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 732
    functionName: pathspec.util.MatchDetail.__init__
    functionSourceFile: ''
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - patterns
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 164
    functionName: pathspec.util._filter_check_patterns
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - <builtin>.enumerate
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e2c6670>
    - <ast.Constant object at 0x7f117e2c6c10>
    argNames:
    - root
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 198
    functionName: pathspec.util.iter_tree
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - os.scandir
    - <builtin>.callable
    - node_ent.is_file
    - pathspec.util.iter_tree_files
    - node_ent.is_dir
    - pathspec.util._iter_tree_files_next
    - os.path.abspath
    - os.path.join
    - os.path.realpath
    - node_ent.is_symlink
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.abspath
    functionSourceFile: os
    functionUses: 7
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 9
    ICount: 6
    IfCount: 6
    argCount: 5
    argDefaultValues: []
    argNames:
    - root_full
    - dir_rel
    - memo
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 239
    functionName: pathspec.util._iter_tree_entries_next
    functionSourceFile: pathspec.util
    functionUses: 2
    functionsReached:
    - os.scandir
    - node_ent.is_file
    - node_ent.is_dir
    - pathspec.util._iter_tree_entries_next
    - node_ent.stat
    - os.path.join
    - os.path.realpath
    - node_ent.is_symlink
    - pathspec.util.TreeEntry.__init__
    linkageType: pythonLinkage
    raised:
    - RecursionError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.join
    functionSourceFile: os
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.path.realpath
    functionSourceFile: os
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.scandir
    functionSourceFile: os
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node_ent.stat
    functionSourceFile: <builtin>
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node_ent.is_symlink
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node_ent.is_dir
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 5
    IfCount: 0
    argCount: 5
    argDefaultValues: []
    argNames:
    - self
    - name
    - path
    - lstat
    - stat
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 756
    functionName: pathspec.util.TreeEntry.__init__
    functionSourceFile: ''
    functionUses: 3
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: node_ent.is_file
    functionSourceFile: <builtin>
    functionUses: 9
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 7
    ICount: 4
    IfCount: 4
    argCount: 5
    argDefaultValues: []
    argNames:
    - root_full
    - dir_rel
    - memo
    - on_error
    - follow_links
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 352
    functionName: pathspec.util._iter_tree_files_next
    functionSourceFile: pathspec.util
    functionUses: 5
    functionsReached:
    - os.scandir
    - node_ent.is_file
    - node_ent.is_dir
    - pathspec.util._iter_tree_files_next
    - os.path.join
    - os.path.realpath
    - node_ent.is_symlink
    linkageType: pythonLinkage
    raised:
    - RecursionError
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - patterns
    - file
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 426
    functionName: pathspec.util.match_file
    functionSourceFile: pathspec.util
    functionUses: 1
    functionsReached:
    - pattern.match_file
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues: []
    argNames:
    - patterns
    - files
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 450
    functionName: pathspec.util.match_files
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - pathspec.util.match_file
    - pattern.match_file
    - return_files.add
    - <builtin>.set
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.set
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: return_files.add
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: os.fspath
    functionSourceFile: os
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: norm_file.replace
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: norm_file.startswith
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 2
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f117e146820>
    argNames:
    - files
    - separators
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 523
    functionName: pathspec.util.normalize_files
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - pathspec.util.normalize_file
    - norm_file.startswith
    - os.fspath
    - norm_file.replace
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 3
    argDefaultValues:
    - <ast.Constant object at 0x7f117e146490>
    argNames:
    - name
    - pattern_factory
    - override
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 556
    functionName: pathspec.util.register_pattern
    functionSourceFile: pathspec.util
    functionUses: 2
    functionsReached:
    - <builtin>.isinstance
    - <builtin>.callable
    linkageType: pythonLinkage
    raised:
    - AlreadyRegisteredError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - name
    - pattern_factory
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 593
    functionName: pathspec.util.AlreadyRegisteredError.__init__
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 609
    functionName: pathspec.util.AlreadyRegisteredError.message
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 619
    functionName: pathspec.util.AlreadyRegisteredError.name
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 626
    functionName: pathspec.util.AlreadyRegisteredError.pattern_factory
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 4
    argDefaultValues: []
    argNames:
    - self
    - real_path
    - first_path
    - second_path
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 639
    functionName: pathspec.util.RecursionError.__init__
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 658
    functionName: pathspec.util.RecursionError.first_path
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 666
    functionName: pathspec.util.RecursionError.message
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 676
    functionName: pathspec.util.RecursionError.real_path
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 684
    functionName: pathspec.util.RecursionError.second_path
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f117e110f40>
    argNames:
    - self
    - follow_links
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 796
    functionName: pathspec.util.TreeEntry.is_dir
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f117e110820>
    argNames:
    - self
    - follow_links
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 812
    functionName: pathspec.util.TreeEntry.is_file
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 1
    argDefaultValues: []
    argNames:
    - self
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 828
    functionName: pathspec.util.TreeEntry.is_symlink
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 2
    argDefaultValues:
    - <ast.Constant object at 0x7f117e21cfa0>
    argNames:
    - self
    - follow_links
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 834
    functionName: pathspec.util.TreeEntry.stat
    functionSourceFile: pathspec.util
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 4
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore.spec
    functionSourceFile: pathspec.patterns.gitignore.spec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 2
    IfCount: 11
    argCount: 2
    argDefaultValues: []
    argNames:
    - is_dir_pattern
    - pattern_segs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 55
    functionName: pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__normalize_segments
    functionSourceFile: pathspec.patterns.gitignore.spec
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - pattern_segs.insert
    - <builtin>.range
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern_segs.insert
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern
    functionSourceFile: pathspec.patterns.gitignore.spec
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - pattern
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 152
    functionName: pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.pattern_to_regex
    functionSourceFile: pathspec.patterns.gitignore.spec
    functionUses: 0
    functionsReached:
    - pattern_str.endswith
    - <builtin>.len
    - pattern_str.startswith
    - pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob
    - pattern_str.rstrip
    - re.escape
    - pattern_str.split
    - <builtin>.range
    - pathspec._typing.assert_unreachable
    - <builtin>.isinstance
    - pattern.decode
    - pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__normalize_segments
    - pattern_segs.insert
    - pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__translate_segments
    - regex.encode
    - <builtin>.enumerate
    - out_parts.append
    linkageType: pythonLinkage
    raised:
    - GitIgnorePatternError
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern.decode
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern_str.endswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern_str.rstrip
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern_str.startswith
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pattern_str.split
    functionSourceFile: <builtin>
    functionUses: 2
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - is_dir_pattern
    - pattern_segs
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 268
    functionName: pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__translate_segments
    functionSourceFile: pathspec.patterns.gitignore.spec
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob
    - re.escape
    - <builtin>.enumerate
    - out_parts.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex.encode
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_parts.append
    functionSourceFile: <builtin>
    functionUses: 4
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 16
    ICount: 1
    IfCount: 11
    argCount: 1
    argDefaultValues: []
    argNames:
    - pattern
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 58
    functionName: pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob
    functionSourceFile: pathspec.patterns.gitignore.base
    functionUses: 4
    functionsReached:
    - <builtin>.len
    - re.escape
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore.base
    functionSourceFile: pathspec.patterns.gitignore.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 1
    IfCount: 3
    argCount: 1
    argDefaultValues: []
    argNames:
    - s
    argTypes:
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: pathspec.patterns.gitignore.base._GitIgnoreBasePattern.escape
    functionSourceFile: pathspec.patterns.gitignore.base
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - out_string.encode
    - s.decode
    linkageType: pythonLinkage
    raised:
    - TypeError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: s.decode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: out_string.encode
    functionSourceFile: <builtin>
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re.escape
    functionSourceFile: re
    functionUses: 5
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan.gitignore
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan.gitignore.HyperscanGiBackend
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 4
    argDefaultValues: []
    argNames:
    - db
    - debug
    - patterns
    - sort_ids
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 78
    functionName: pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 9
    functionsReached:
    - <builtin>.len
    - regex.decode
    - regex_str.replace
    - <builtin>.range
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - db.compile
    - exprs.append
    - use_regexes.append
    - regex.encode
    - regex_str.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex.decode
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex_str.endswith
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: use_regexes.append
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex_str.replace
    functionSourceFile: <builtin>
    functionUses: 14
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: expr_data.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: exprs.append
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: db.compile
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: file.encode
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: db.scan
    functionSourceFile: <builtin>
    functionUses: 11
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 1
    IfCount: 2
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - expr_id
    - _from
    - _to
    - _flags
    - _context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 211
    functionName: pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__on_match
    functionSourceFile: pathspec._backends.hyperscan.gitignore
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec.patterns
    functionSourceFile: pathspec.patterns
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.patterns.gitwildmatch
    functionSourceFile: pathspec.patterns.gitwildmatch
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pathspec.util.register_pattern
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.patterns.gitwildmatch.GitWildMatchPattern
    functionSourceFile: pathspec.patterns.gitwildmatch
    functionUses: 0
    functionsReached:
    - typing_extensions.override
    - warnings.deprecated
    - pathspec._typing.deprecated.decorator
    - typing_extensions.deprecated
    - typing.override
    - functools.wraps
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - self
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 31
    functionName: pathspec.patterns.gitwildmatch.GitWildMatchPattern.__init__
    functionSourceFile: pathspec.patterns.gitwildmatch
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 3
    argDefaultValues: []
    argNames:
    - cls
    - args
    - kw
    argTypes:
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 43
    functionName: pathspec.patterns.gitwildmatch.GitWildMatchPattern.pattern_to_regex
    functionSourceFile: pathspec.patterns.gitwildmatch
    functionUses: 0
    functionsReached:
    - <builtin>.super
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore.basic
    functionSourceFile: pathspec.patterns.gitignore.basic
    functionUses: 0
    functionsReached:
    - <builtin>.isinstance
    - pathspec.util.register_pattern
    - <builtin>.callable
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 2
    argDefaultValues: []
    argNames:
    - is_dir_pattern
    - pattern_segs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 34
    functionName: pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__normalize_segments
    functionSourceFile: pathspec.patterns.gitignore.basic
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - pattern_segs.insert
    - <builtin>.range
    linkageType: pythonLinkage
    raised:
    - ValueError
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern
    functionSourceFile: pathspec.patterns.gitignore.basic
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 15
    ICount: 2
    IfCount: 10
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - pattern
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 3
    functionLinenumber: 128
    functionName: pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.pattern_to_regex
    functionSourceFile: pathspec.patterns.gitignore.basic
    functionUses: 0
    functionsReached:
    - pattern_str.endswith
    - <builtin>.len
    - pattern_str.startswith
    - pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob
    - pattern_str.rstrip
    - re.escape
    - out_parts.append
    - pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__translate_segments
    - <builtin>.range
    - pathspec._typing.assert_unreachable
    - <builtin>.isinstance
    - pattern.decode
    - pattern_segs.insert
    - regex.encode
    - pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__normalize_segments
    - <builtin>.enumerate
    - pattern_str.split
    linkageType: pythonLinkage
    raised:
    - GitIgnorePatternError
    - TypeError
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 2
    argDefaultValues: []
    argNames:
    - cls
    - pattern_segs
    argTypes:
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 2
    functionLinenumber: 247
    functionName: pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__translate_segments
    functionSourceFile: pathspec.patterns.gitignore.basic
    functionUses: 1
    functionsReached:
    - <builtin>.len
    - pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob
    - re.escape
    - <builtin>.enumerate
    - out_parts.append
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan.pathspec
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 222
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 9
    functionsReached:
    - hyperscan.Database
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - db
    - debug
    - patterns
    - sort_ids
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 117
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 9
    functionsReached:
    - <builtin>.len
    - <builtin>.range
    - <builtin>.list
    - <builtin>.isinstance
    - expr_data.append
    - db.compile
    - exprs.append
    - regex.encode
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.dict
    functionSourceFile: <builtin>
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: hyperscan.Database
    functionSourceFile: hyperscan
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 2
    ICount: 1
    IfCount: 1
    argCount: 6
    argDefaultValues: []
    argNames:
    - self
    - expr_id
    - _from
    - _to
    - _flags
    - _context
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: 230
    functionName: pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__on_match
    functionSourceFile: pathspec._backends.hyperscan.pathspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec.patterns.gitignore
    functionSourceFile: pathspec.patterns.gitignore
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.hyperscan._base
    functionSourceFile: pathspec._backends.hyperscan._base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.re2.base
    functionSourceFile: pathspec._backends.re2.base
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.re2.gitignore
    functionSourceFile: pathspec._backends.re2.gitignore
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.re2.gitignore.Re2GiBackend
    functionSourceFile: pathspec._backends.re2.gitignore
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 12
    ICount: 10
    IfCount: 8
    argCount: 4
    argDefaultValues: []
    argNames:
    - debug
    - patterns
    - regex_set
    - sort_indices
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 44
    functionName: pathspec._backends.re2.gitignore.Re2GiBackend._init_set
    functionSourceFile: pathspec._backends.re2.gitignore
    functionUses: 11
    functionsReached:
    - regex.decode
    - patterns.keys
    - <builtin>.len
    - regex_data.append
    - regex_str.replace
    - <builtin>.list
    - <builtin>.isinstance
    - regex_set.Compile
    - use_regexes.append
    - regex_set.Add
    - regex_str.endswith
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: patterns.keys
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex_data.append
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex_set.Add
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: regex_set.Compile
    functionSourceFile: <builtin>
    functionUses: 13
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 2
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.re2._base
    functionSourceFile: pathspec._backends.re2._base
    functionUses: 0
    functionsReached:
    - re2.Options
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re2.Options
    functionSourceFile: re2
    functionUses: 1
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends.re2.pathspec
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 157
    functionName: pathspec._backends.re2.pathspec.Re2PsBackend._make_set
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 11
    functionsReached:
    - re2.Set.SearchSet
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 5
    ICount: 6
    IfCount: 3
    argCount: 4
    argDefaultValues: []
    argNames:
    - debug
    - patterns
    - regex_set
    - sort_indices
    argTypes:
    - N/A
    - N/A
    - N/A
    - N/A
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: 97
    functionName: pathspec._backends.re2.pathspec.Re2PsBackend._init_set
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 11
    functionsReached:
    - patterns.keys
    - regex_data.append
    - <builtin>.list
    - <builtin>.isinstance
    - regex_set.Compile
    - regex_set.Add
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: re2.Set.SearchSet
    functionSourceFile: re2
    functionUses: 12
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 1
    functionLinenumber: -1
    functionName: pathspec._backends.re2.pathspec.Re2PsBackend
    functionSourceFile: pathspec._backends.re2.pathspec
    functionUses: 0
    functionsReached:
    - typing.override
    - typing_extensions.override
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 0
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: <builtin>.max
    functionSourceFile: <builtin>
    functionUses: 10
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._backends
    functionSourceFile: pathspec._backends
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  - BBCount: 0
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 1
    ICount: 1
    IfCount: 0
    argCount: 0
    argDefaultValues: []
    argNames: []
    argTypes: []
    constantsTouched: []
    functionDepth: 0
    functionLinenumber: -1
    functionName: pathspec._version
    functionSourceFile: pathspec._version
    functionUses: 0
    functionsReached: []
    linkageType: pythonLinkage
    raised: []
    returnType: N/A
  Function list name: All functions
Function coverage:
  '...fuzz_pathspec':
  - 60
  - 61
  '...fuzz_pathspec.TestOneInput':
  - 50
  - 51
  '...fuzz_pathspec.main':
  - 56
  - 57
  - 55
  '...fuzz_pathspec.test_git':
  - 35
  - 37
  - 38
  - 41
  - 46
  '...fuzz_pathspec.test_raw':
  - 22
  - 25
  - 26
  - 28
  - 31
  pathspec:
  - 1
  pathspec._backends:
  - 1
  pathspec._backends._utils:
  - 16
  - 1
  pathspec._backends._utils.enumerate_patterns:
  - 24
  - 42
  - 43
  - 39
  pathspec._backends.agg:
  - 1
  - 43
  - 45
  - 39
  pathspec._backends.agg.make_gitignore_backend:
  - 66
  - 69
  - 70
  - 71
  - 72
  - 73
  - 74
  - 55
  pathspec._backends.agg.make_pathspec_backend:
  - 97
  - 98
  - 99
  - 100
  - 101
  - 102
  - 83
  - 94
  pathspec._backends.hyperscan._base:
  - 24
  - 1
  pathspec._backends.hyperscan._base.HyperscanExprDat:
  - 48
  - 59
  - 35
  - 54
  pathspec._backends.hyperscan._base.HyperscanExprDebug:
  - 67
  - 76
  pathspec._backends.hyperscan.base:
  - 1
  - 21
  pathspec._backends.hyperscan.gitignore:
  - 1
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend:
  - 41
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__init__:
  - 57
  - 66
  - 63
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.__on_match:
  - 240
  - 219
  - 228
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend._init_db:
  - 129
  - 132
  - 133
  - 134
  - 137
  - 138
  - 140
  - 142
  - 144
  - 145
  - 148
  - 149
  - 151
  - 152
  - 159
  - 165
  - 168
  - 169
  - 170
  - 174
  - 177
  - 84
  - 109
  - 113
  - 117
  - 121
  - 124
  - 125
  - 127
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend.match_file:
  - 184
  - 202
  - 196
  - 205
  pathspec._backends.hyperscan.pathspec:
  - 1
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend:
  - 40
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__init__:
  - 96
  - 65
  - 69
  - 70
  - 71
  - 72
  - 102
  - 110
  - 111
  - 53
  - 85
  - 90
  - 59
  - 62
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.__on_match:
  - 250
  - 238
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._init_db:
  - 161
  - 162
  - 169
  - 155
  - 187
  - 175
  - 178
  - 179
  - 148
  - 180
  - 184
  - 152
  - 123
  - 158
  - 159
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend._make_db:
  - 228
  - 223
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend.match_file:
  - 216
  - 195
  - 213
  - 207
  pathspec._backends.re2._base:
  - 1
  - 26
  - 21
  pathspec._backends.re2._base.Re2RegexDat:
  - 62
  - 57
  - 51
  - 38
  pathspec._backends.re2._base.Re2RegexDebug:
  - 70
  - 79
  pathspec._backends.re2.base:
  - 1
  - 20
  pathspec._backends.re2.gitignore:
  - 1
  pathspec._backends.re2.gitignore.Re2GiBackend:
  - 37
  pathspec._backends.re2.gitignore.Re2GiBackend._init_set:
  - 130
  - 50
  - 69
  - 70
  - 71
  - 75
  - 77
  - 80
  - 84
  - 89
  - 92
  - 93
  - 95
  - 97
  - 100
  - 101
  - 102
  - 105
  - 106
  - 108
  - 110
  - 112
  - 113
  - 114
  - 121
  - 127
  pathspec._backends.re2.gitignore.Re2GiBackend.match_file:
  - 135
  - 169
  - 145
  - 146
  - 154
  - 158
  pathspec._backends.re2.pathspec:
  - 1
  pathspec._backends.re2.pathspec.Re2PsBackend:
  - 39
  pathspec._backends.re2.pathspec.Re2PsBackend.__init__:
  - 66
  - 68
  - 69
  - 75
  - 92
  - 80
  - 51
  - 86
  - 57
  - 60
  - 63
  pathspec._backends.re2.pathspec.Re2PsBackend._init_set:
  - 128
  - 130
  - 133
  - 103
  - 136
  - 137
  - 144
  - 150
  - 153
  - 122
  - 123
  - 124
  pathspec._backends.re2.pathspec.Re2PsBackend._make_set:
  - 163
  - 158
  pathspec._backends.re2.pathspec.Re2PsBackend.match_file:
  - 185
  - 180
  - 181
  - 167
  pathspec._backends.simple.gitignore:
  - 1
  pathspec._backends.simple.gitignore.SimpleGiBackend:
  - 25
  pathspec._backends.simple.gitignore.SimpleGiBackend.__init__:
  - 40
  - 52
  pathspec._backends.simple.gitignore.SimpleGiBackend.match_file:
  - 99
  - 70
  - 71
  - 73
  - 78
  - 80
  - 87
  - 56
  - 88
  - 94
  pathspec._backends.simple.pathspec:
  - 1
  pathspec._backends.simple.pathspec.SimplePsBackend:
  - 27
  pathspec._backends.simple.pathspec.SimplePsBackend.__init__:
  - 57
  - 60
  - 53
  - 39
  pathspec._backends.simple.pathspec.SimplePsBackend.match_file:
  - 67
  - 76
  pathspec._meta:
  - 1
  pathspec._typing:
  - 1
  - 26
  - 20
  pathspec._typing.assert_unreachable:
  - 59
  pathspec._typing.deprecated.decorator:
  - 41
  pathspec._typing.deprecated.decorator.wrapper:
  - 43
  - 44
  pathspec._version:
  - 1
  pathspec.backend:
  - 1
  - 13
  pathspec.backend._Backend:
  - 19
  pathspec.backend._Backend.match_file:
  - 28
  pathspec.gitignore:
  - 1
  - 23
  pathspec.gitignore.GitIgnoreSpec:
  - 47
  pathspec.gitignore.GitIgnoreSpec.__eq__:
  - 59
  - 60
  - 61
  - 54
  pathspec.gitignore.GitIgnoreSpec._make_backend:
  - 163
  - 150
  pathspec.gitignore.GitIgnoreSpec.from_lines:
  - 121
  - 132
  - 101
  - 133
  - 135
  - 77
  - 141
  - 142
  - 89
  - 125
  - 127
  pathspec.pathspec:
  - 1
  - 23
  pathspec.pathspec.PathSpec:
  - 46
  - 415
  pathspec.pathspec.PathSpec.__add__:
  - 104
  - 105
  - 100
  pathspec.pathspec.PathSpec.__eq__:
  - 114
  - 115
  - 116
  - 110
  pathspec.pathspec.PathSpec.__iadd__:
  - 121
  - 125
  - 127
  pathspec.pathspec.PathSpec.__init__:
  - 70
  - 71
  - 73
  - 76
  - 77
  - 78
  - 80
  - 83
  - 89
  - 58
  - 94
  pathspec.pathspec.PathSpec.__len__:
  - 137
  - 133
  pathspec.pathspec.PathSpec._make_backend:
  - 266
  - 279
  pathspec.pathspec.PathSpec.check_file:
  - 144
  - 156
  - 157
  - 158
  pathspec.pathspec.PathSpec.check_files:
  - 165
  - 179
  - 182
  - 183
  - 184
  - 185
  pathspec.pathspec.PathSpec.check_tree_files:
  - 193
  - 218
  - 217
  pathspec.pathspec.PathSpec.from_lines:
  - 258
  - 259
  - 229
  - 249
  - 250
  - 252
  - 255
  pathspec.pathspec.PathSpec.match_entries:
  - 288
  - 306
  - 309
  - 310
  - 311
  - 313
  - 316
  - 317
  pathspec.pathspec.PathSpec.match_file:
  - 336
  - 337
  - 338
  - 324
  pathspec.pathspec.PathSpec.match_files:
  - 366
  - 369
  - 370
  - 371
  - 373
  - 376
  - 377
  - 347
  pathspec.pathspec.PathSpec.match_tree:
  - 424
  - 419
  pathspec.pathspec.PathSpec.match_tree_entries:
  - 412
  - 387
  - 411
  pathspec.pathspec.PathSpec.match_tree_files:
  - 457
  - 434
  - 458
  pathspec.pattern:
  - 1
  - 20
  pathspec.pattern.Pattern:
  - 29
  - 54
  pathspec.pattern.Pattern.__init__:
  - 48
  - 39
  pathspec.pattern.Pattern.match:
  - 72
  - 73
  - 74
  - 59
  pathspec.pattern.Pattern.match_file:
  - 77
  pathspec.pattern.RegexMatchResult:
  - 227
  - 238
  pathspec.pattern.RegexPattern:
  - 90
  pathspec.pattern.RegexPattern.__copy__:
  - 161
  - 166
  pathspec.pattern.RegexPattern.__eq__:
  - 176
  - 171
  pathspec.pattern.RegexPattern.__init__:
  - 128
  - 130
  - 135
  - 106
  - 146
  - 149
  - 120
  - 155
  - 124
  - 127
  pathspec.pattern.RegexPattern.match_file:
  - 192
  - 193
  - 194
  - 195
  - 183
  pathspec.pattern.RegexPattern.pattern_to_regex:
  - 204
  pathspec.patterns:
  - 1
  pathspec.patterns.gitignore:
  - 1
  pathspec.patterns.gitignore.base:
  - 1
  - 13
  pathspec.patterns.gitignore.base.GitIgnorePatternError:
  - 172
  pathspec.patterns.gitignore.base._GitIgnoreBasePattern:
  - 19
  pathspec.patterns.gitignore.base._GitIgnoreBasePattern._translate_segment_glob:
  - 161
  - 98
  - 131
  - 163
  - 135
  - 73
  - 108
  - 79
  - 113
  - 82
  - 146
  - 84
  - 88
  - 59
  - 120
  - 93
  pathspec.patterns.gitignore.base._GitIgnoreBasePattern.escape:
  - 32
  - 40
  - 43
  - 45
  - 50
  - 52
  - 53
  pathspec.patterns.gitignore.basic:
  - 1
  - 317
  pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern:
  - 25
  pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__normalize_segments:
  - 64
  - 38
  - 103
  - 72
  - 77
  - 112
  - 95
  - 53
  - 87
  - 90
  - 59
  - 93
  - 94
  - 63
  pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.__translate_segments:
  - 259
  - 260
  - 261
  - 262
  - 267
  - 269
  - 272
  - 279
  - 283
  - 285
  - 287
  - 288
  - 290
  - 292
  - 296
  - 298
  - 299
  - 303
  - 309
  - 248
  pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern.pattern_to_regex:
  - 132
  - 147
  - 150
  - 151
  - 159
  - 166
  - 171
  - 176
  - 182
  - 193
  - 199
  - 209
  - 217
  - 221
  - 224
  - 230
  - 233
  - 239
  - 240
  pathspec.patterns.gitignore.spec:
  - 1
  - 36
  - 25
  - 31
  pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern:
  - 42
  pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__normalize_segments:
  - 98
  - 133
  - 74
  - 108
  - 142
  - 111
  - 80
  - 114
  - 115
  - 84
  - 85
  - 116
  - 59
  - 124
  - 93
  pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.__translate_segments:
  - 273
  - 287
  - 288
  - 289
  - 290
  - 293
  - 295
  - 298
  - 305
  - 306
  - 308
  - 312
  - 314
  - 316
  - 317
  - 319
  - 321
  - 325
  - 327
  - 331
  pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern.pattern_to_regex:
  - 260
  - 261
  - 156
  - 171
  - 174
  - 175
  - 183
  - 190
  - 195
  - 200
  - 206
  - 211
  - 222
  - 230
  - 238
  - 242
  - 245
  - 251
  - 254
  pathspec.patterns.gitwildmatch:
  - 1
  - 52
  pathspec.patterns.gitwildmatch.GitWildMatchPattern:
  - 27
  - 21
  - 39
  pathspec.patterns.gitwildmatch.GitWildMatchPattern.__init__:
  - 32
  - 35
  pathspec.patterns.gitwildmatch.GitWildMatchPattern.pattern_to_regex:
  - 44
  - 47
  pathspec.util:
  - 1
  - 34
  - 33
  - 195
  - 519
  - 43
  - 51
  - 446
  pathspec.util.AlreadyRegisteredError:
  - 588
  pathspec.util.AlreadyRegisteredError.__init__:
  - 606
  - 598
  pathspec.util.AlreadyRegisteredError.message:
  - 610
  pathspec.util.AlreadyRegisteredError.name:
  - 620
  pathspec.util.AlreadyRegisteredError.pattern_factory:
  - 627
  pathspec.util.CheckResult:
  - 712
  - 707
  - 718
  - 694
  pathspec.util.MatchDetail:
  - 725
  pathspec.util.MatchDetail.__init__:
  - 741
  - 733
  pathspec.util.RecursionError:
  - 635
  pathspec.util.RecursionError.__init__:
  - 645
  - 655
  pathspec.util.RecursionError.first_path:
  - 659
  pathspec.util.RecursionError.message:
  - 667
  pathspec.util.RecursionError.real_path:
  - 677
  pathspec.util.RecursionError.second_path:
  - 685
  pathspec.util.TreeEntry:
  - 749
  pathspec.util.TreeEntry.__init__:
  - 777
  - 782
  - 787
  - 792
  - 763
  pathspec.util.TreeEntry.is_dir:
  - 810
  - 797
  - 806
  pathspec.util.TreeEntry.is_file:
  - 826
  - 813
  - 822
  pathspec.util.TreeEntry.is_symlink:
  - 832
  - 829
  pathspec.util.TreeEntry.stat:
  - 835
  - 844
  pathspec.util._filter_check_patterns:
  - 179
  - 167
  pathspec.util._is_iterable:
  - 192
  - 185
  pathspec.util._iter_tree_entries_next:
  - 265
  - 266
  - 270
  - 275
  - 277
  - 278
  - 282
  - 284
  - 285
  - 288
  - 291
  - 293
  - 294
  - 299
  - 302
  - 304
  - 306
  - 308
  - 246
  pathspec.util._iter_tree_files_next:
  - 388
  - 390
  - 359
  - 391
  - 393
  - 396
  - 398
  - 400
  - 402
  - 404
  - 378
  - 379
  - 383
  pathspec.util.append_dir_sep:
  - 58
  - 67
  - 68
  pathspec.util.check_match_file:
  - 97
  - 100
  - 101
  - 110
  - 79
  - 111
  pathspec.util.detailed_match_files:
  - 140
  - 142
  - 143
  - 144
  - 145
  - 147
  - 148
  - 149
  - 150
  - 154
  - 123
  - 158
  pathspec.util.iter_tree:
  - 203
  - 199
  pathspec.util.iter_tree_entries:
  - 233
  - 211
  - 236
  - 230
  pathspec.util.iter_tree_files:
  - 346
  - 323
  - 349
  - 343
  pathspec.util.lookup_pattern:
  - 415
  pathspec.util.match_file:
  - 440
  - 427
  - 439
  pathspec.util.match_files:
  - 454
  - 471
  - 472
  - 473
  - 474
  pathspec.util.normalize_file:
  - 512
  - 483
  - 499
  - 503
  - 505
  - 506
  - 508
  pathspec.util.normalize_files:
  - 546
  - 547
  - 548
  - 549
  - 527
  pathspec.util.register_pattern:
  - 561
  - 578
  - 581
  - 575
Fuzzer filename: /src/fuzz_pathspec.py
Inheritance:
  pathspec._backends.hyperscan._base.HyperscanExprDat:
  - object
  pathspec._backends.hyperscan._base.HyperscanExprDebug:
  - HyperscanExprDat
  pathspec._backends.hyperscan.gitignore.HyperscanGiBackend:
  - HyperscanPsBackend
  pathspec._backends.hyperscan.pathspec.HyperscanPsBackend:
  - _Backend
  pathspec._backends.re2._base.Re2RegexDat:
  - object
  pathspec._backends.re2._base.Re2RegexDebug:
  - Re2RegexDat
  pathspec._backends.re2.gitignore.Re2GiBackend:
  - Re2PsBackend
  pathspec._backends.re2.pathspec.Re2PsBackend:
  - _Backend
  pathspec._backends.simple.gitignore.SimpleGiBackend:
  - SimplePsBackend
  pathspec._backends.simple.pathspec.SimplePsBackend:
  - _Backend
  pathspec.backend._Backend:
  - object
  pathspec.gitignore.GitIgnoreSpec:
  - PathSpec
  pathspec.pathspec.PathSpec:
  - object
  pathspec.pattern.Pattern:
  - object
  pathspec.pattern.RegexMatchResult:
  - object
  pathspec.pattern.RegexPattern:
  - Pattern
  pathspec.patterns.gitignore.base.GitIgnorePatternError:
  - ValueError
  pathspec.patterns.gitignore.base._GitIgnoreBasePattern:
  - RegexPattern
  pathspec.patterns.gitignore.basic.GitIgnoreBasicPattern:
  - _GitIgnoreBasePattern
  pathspec.patterns.gitignore.spec.GitIgnoreSpecPattern:
  - _GitIgnoreBasePattern
  pathspec.patterns.gitwildmatch.GitWildMatchPattern:
  - GitIgnoreSpecPattern
  pathspec.util.AlreadyRegisteredError:
  - Exception
  pathspec.util.CheckResult: []
  pathspec.util.MatchDetail:
  - object
  pathspec.util.RecursionError:
  - Exception
  pathspec.util.TreeEntry:
  - object
ep:
  func_name: TestOneInput
  module: '...fuzz_pathspec'
