MCPcopy
hub / github.com/coderamp-labs/gitingest / process_patterns

Function process_patterns

src/gitingest/utils/pattern_utils.py:13–45  ·  view source on GitHub ↗

Process include and exclude patterns. Parameters ---------- exclude_patterns : str | set[str] | None Exclude patterns to process. include_patterns : str | set[str] | None Include patterns to process. Returns ------- tuple[set[str], set[str] | None]

(
    exclude_patterns: str | set[str] | None = None,
    include_patterns: str | set[str] | None = None,
)

Source from the content-addressed store, hash-verified

11
12
13def process_patterns(
14 exclude_patterns: str | set[str] | None = None,
15 include_patterns: str | set[str] | None = None,
16) -> tuple[set[str], set[str] | None]:
17 """Process include and exclude patterns.
18
19 Parameters
20 ----------
21 exclude_patterns : str | set[str] | None
22 Exclude patterns to process.
23 include_patterns : str | set[str] | None
24 Include patterns to process.
25
26 Returns
27 -------
28 tuple[set[str], set[str] | None]
29 A tuple containing the processed ignore patterns and include patterns.
30
31 """
32 # Combine default ignore patterns + custom patterns
33 ignore_patterns_set = DEFAULT_IGNORE_PATTERNS.copy()
34 if exclude_patterns:
35 ignore_patterns_set.update(_parse_patterns(exclude_patterns))
36
37 # Process include patterns and override ignore patterns accordingly
38 if include_patterns:
39 parsed_include = _parse_patterns(include_patterns)
40 # Override ignore patterns with include patterns
41 ignore_patterns_set = set(ignore_patterns_set) - set(parsed_include)
42 else:
43 parsed_include = None
44
45 return ignore_patterns_set, parsed_include
46
47
48def _parse_patterns(patterns: str | Iterable[str]) -> set[str]:

Callers 4

ingest_asyncFunction · 0.90
process_queryFunction · 0.90

Calls 1

_parse_patternsFunction · 0.85