# gobwas/glob

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/gobwas-glob).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

1,020 stars · 79 forks · Go · MIT

## Links

- GitHub: https://github.com/gobwas/glob
- awesome-repositories: https://awesome-repositories.com/repository/gobwas-glob.md

## Topics

`glob` `golang` `pattern`

## Description

Glob is a pattern matching library for Go that compiles wildcard strings and file paths into optimized matchers for high-throughput string validation and filtering. It evaluates text and file paths against character sets, ranges, and alternatives to determine if candidate inputs fit specific criteria. 

The library parses raw glob strings into structured syntax nodes before translating them into bytecode instruction sequences upfront. This compilation process enables finite state machine evaluations and zero-allocation path matching during runtime execution, preventing garbage collection pressure during high-frequency checks.

## Tags

### Part of an Awesome List

- [Globbing Pattern Matching](https://awesome-repositories.com/f/awesome-lists/devtools/file-and-directory-management/globbing-pattern-matching.md) — Filters filesystem paths and directory listings using standard wildcard rules and patterns in Go programs.

### Data & Databases

- [Wildcard Pattern Matching](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing/search-and-indexing/prefix-searches/object-search/wildcard-pattern-matching.md) — Evaluates candidate text against compiled wildcard rules supporting single-character wildcards, character sets, ranges, and alternatives. ([source](https://github.com/gobwas/glob/blob/master/readme.md))

### Development Tools & Productivity

- [Path-Optimized Matchers](https://awesome-repositories.com/f/development-tools-productivity/file-filtering-utilities/file-path-locators/path-optimized-matchers.md) — Evaluates text and file paths against character sets, ranges, and alternatives using optimized path matching engines.

### Programming Languages & Runtimes

- [Bytecode Compilation](https://awesome-repositories.com/f/programming-languages-runtimes/bytecode-compilation.md) — Compiles wildcard strings into optimized bytecode instruction sequences upfront to maximize runtime execution performance.

### Software Engineering & Architecture

- [Finite State Machine Engines](https://awesome-repositories.com/f/software-engineering-architecture/finite-state-machine-engines.md) — Processes string matching operations through deterministic finite state machine evaluations to handle complex wildcard patterns efficiently.
- [Pattern Matching Libraries](https://awesome-repositories.com/f/software-engineering-architecture/pattern-matching-libraries.md) — Provides a high-performance pattern matching library that compiles wildcard and path patterns into optimized matchers in Go.
- [Path Matchers](https://awesome-repositories.com/f/software-engineering-architecture/zero-allocation-architectures/path-matchers.md) — Executes string validations without allocating heap memory to prevent garbage collection pressure during high-frequency checks.

### Web Development

- [String Pattern Validators](https://awesome-repositories.com/f/web-development/string-pattern-validators.md) — Provides fast string validation by compiling wildcard rules to repeatedly check candidate inputs against specific patterns.
