-
nom
A byte-oriented, zero-copy, parser combinators library
-
pest
The Elegant Parser
-
logos
Create ridiculously fast Lexers
-
chumsky
A parser library for humans with powerful error recovery
-
combine
Fast parser combinators on arbitrary streams with zero-copy support
-
pom
PEG parser combinators using operator overloading without macros
-
lalrpop
convenient LR(1) parser generator
-
atoi
Parse integers directly from
[u8]
slices in safe code -
lexical-parse-float
Efficient parsing of floats from strings
-
tree-sitter-bash
Bash grammar for tree-sitter
-
tree-sitter-haskell
Haskell grammar for tree-sitter
-
parol
LL(k) and LALR(1) parser generator for Rust
-
rusticata-macros
Helper macros for Rusticata
-
pest_meta
pest meta language parser and validator
-
nimbleparse
Yacc grammar debugging tool
-
yap
Parser library. A lightweight, dependency free, parser combinator inspired set of utility methods to help with parsing strings and slices.
-
tree-sitter-scala
Scala grammar for tree-sitter
-
tree-sitter-elixir
Elixir grammar for the tree-sitter parsing library
-
oni-comb-parser-rs
parser combinators
-
tree-sitter-nix
nix grammar for the tree-sitter parsing library
-
pomelo
Lemon parser generator as a Rust procedural macro
-
tree-sitter-c-sharp
C# grammar for tree-sitter
-
kparse
Tracking and better error handling for nom parsers
-
tree-sitter-tlaplus
A tree-sitter grammar for TLA⁺ and PlusCal
-
kamo
assist in the creation of an interpreter or compiler and its associated runtime
-
hime_compiler
CLI tool for the generation of LR and GLR parsers for the Hime runtime
-
neure
A fast little combinational parsing library
-
lelwel
Resilient LL(1) parser generator
-
splitty
a string splitter taking quotes into account
-
cfg
manipulating context-free grammars
-
descape
Adds a single extension trait for &str to unescape any backslashes
-
flexar
An extremely flexible lexer/parser (get it?) for writing your own programming language
-
nom-supreme
A collection of excellent utilities for nom
-
pest_consume
A framework for processing the output of a pest-generated parser
-
tree-sitter-erlang
erlang grammar for the tree-sitter parsing library
-
rusty_lr_parser
macro line parser for rusty_lr
-
combi
A combinators library with an included rust token parsing implementation
-
lalrpop-util
Runtime library for parsers generated by LALRPOP
-
lrtable
LR grammar table generation
-
whitehole
fast, intuitive parser combinator framework for Rust
-
tree-sitter-kotlin-sg
Kotlin grammar for the tree-sitter parsing library
-
form_builder
building forms with various fields and validation
-
chomp1
A fast monadic-style parser combinator designed to work on stable Rust
-
pest_generator
pest code generator
-
laps
Build lexers and parsers by deriving traits
-
antlr-rust
ANTLR4 runtime for Rust
-
earlgrey
parsing context-free grammars using Earley algorithm
-
pidgin
non-recursive grammars
-
bitvec-nom2
Bit level parsing for nom with bitvec
-
gramatica
A compiler compiler for Rust implementing Earley's parser
-
monch
Inspired by nom, but specifically for strings
-
safe-regex
Safe regular expression library
-
nom-recursive
Extension of nom to handle left recursion
-
structview
Viewing binary data as high-level data structures, safely
-
inpt
A derive crate for dumb type-level text parsing
-
docx-rust
parsing and generating docx files
-
tree-sitter-fortran
fortran grammar for the tree-sitter parsing library
-
plain
A small Rust library that allows users to reinterpret data of certain types safely
-
stack_maxima_parser
Parser for the Modified Maxima syntax used in STACK
-
herring
Lexer generator
-
snacks
more nom parser-combinators
-
gallop
General LL(1) Parser
-
pratt
parser for Rust
-
pdl-runtime
PDL's runtime library
-
pest_typed_generator
Pest-typed's code generator
-
rustemo
A LR/GLR parser generator
-
yggdrasil-rt
Yggdrasil Shared Structure
-
rusty_parser
A Generic compile-time Parser generator and pattern matching library written in Rust
-
peginator
PEG parser generator for creating ASTs in Rust (runtime)
-
rusttyc
writing type checkers with a lattice-like type system in rust
-
camxes-rs
A Parsing Expression Grammar (PEG) parser generator with zero-copy parsing and rich debugging capabilities
-
parcelona
minimalistic elegance parser combinator library
-
rflex
Fast lexer code generator for Rust
-
nbnf
A parser generator based on nom, with syntax inspired by EBNF and regex
-
fn-bnf
A parsing grammar generator that lets you use arbitrary Rust items as rules
-
alkale
LL(1) lexer library for Rust
-
tree-sitter-php
PHP grammar for tree-sitter
-
lexers
Tools for tokenizing and scanning
-
tokenizer-lib
Tokenization utilities for building parsers in Rust
-
glue
parser combinator framework for parsing text based formats, it is easy to use and relatively fast too
-
bparse
parsing bytes
-
bexeval
evaluating string formulas restricted to values as integers only
-
kiki
A minimalist parser generator for Rust
-
tree-sitter-cuda
cuda grammar for the tree-sitter parsing library
-
bitbite
trait that would help you interact bytes with flags easily
-
bnf_rules
LR(1) parser generator
-
shrimple-parser
Zero-dependency next-gen parsing combinator library with flexible error reporting
-
mexprp
A math expression parsing and evaluation library
-
test_eq
assert_eq!-like macros that return a Result instead
-
tree-sitter-jinja2
jinja2 grammar for the tree-sitter parsing library
-
logos-codegen
Create ridiculously fast Lexers
-
tuckey
lexer/parser generation framework
-
token-string
Short (up to 65,535 bytes) immutable strings to e.g. parse tokens, implemented in Rust. These are sometimes called 'German Strings', because Germans have written the paper mentioning them.
-
rocketmq-tools
Apache RocketMQ tools
-
hime_langserv
Language server for Hime grammars
-
pa-rs
Parsing library using concepts of Parser combinators
-
expression_core
Core functionality for mathematical expression parsing
-
peg
Parsing Expression Grammar (PEG) parser generator
-
thisenum
Assign constant literals to enum arms
-
nom-parse-trait
Adding traits to make parsing types easier
-
mpl
Minimal parser combinator of Minimal Parsing Language (MPL) like Top-Down Parsing Language (TDPL)
-
simple-tokenizer
A tiny no_std tokenizer with line & column tracking
-
udled
Tokenizer and parser
-
apt-parser
A parser for the APT package manager's package lists
-
syntax-parser-generator
Independent library for generating lexical-analyzers and LALR parsers
-
gobble
A Combinator based parser for strings that gets out of the way, and leaves your code looking like a grammer
-
byte-parser
Parse a str or a slice with a function style
-
winnow
A byte-oriented, zero-copy, parser combinators library
-
lib-lexin
lexer library
-
lemon-mint
Famous Lemon Parser Generator implemented in rust as library with API
-
dynparser
Dynamic parser. You can define rules at run time. It's possible to use peg format
-
tree-sitter-devicetree
Tree-sitter parser for Devicetree files, with support for Zephyr's superset of Devicetree syntax
-
pest_railroad_gen
Railroad (aka syntax) SVG diagram generator for Pest parsers. It supports most (but not all) Pest grammar rules.
-
flussab
writing parsers
-
rushell_deps_pom
PEG parser combinators using operator overloading without macros
-
pkombi
Parser combinator library
-
tree-sitter-lammps
lammps grammar for the tree-sitter parsing library
-
ruly2
parser generator from context free grammar
-
strp
string parsing utility crate, supporting no_std contexts
-
lang_pt
A parser tool to generate recursive descent top down parser
-
combine_wasi
Fast parser combinators on arbitrary streams with zero-copy support
-
parser_fuck
parser combinator library
-
rustylr
executable for rusty_lr
-
pag-lexer
Parser-lexer fusion generator (derivative lexer)
-
peekread
Allows peeking ahead in Read streams
-
binator
Parser Combinator
-
lrpar
Yacc-compatible parser generator
-
saudi_id
Parse (validate) or randomly generate Saudi Arabian national IDs
-
take_sni
just parse sni from buf
-
komb
A primitive parser combinator library
-
nifty
generating Deterministic Finite State Automata (DFA)
-
manger
A performant, low-level, lightweight and intuitive combinatoric parser library
-
parsy
efficient parser combinators library
-
tree-sitter-templ
templ grammar for the tree-sitter parsing library
-
pom-preview
PEG parser combinators using operator overloading without macros
-
tree-sitter-sfapex
Salesforce Apex, SOQL, SOQL, and Log grammars for tree-sitter
-
generator-combinator
Composes combinators to generate patterns of increasing complexity
-
lexer
plugin based lexical reader
-
enso-automata
A finite-automata-based lexing engine
-
lip
powerful parser combinators for creating reusable and flexible parsers
-
split-paragraphs
Iterator over paragraphs of a string
-
sprout
growing simple, but beautiful AST trees 🌳
-
pest_vm
pest grammar virtual machine
-
unreferenced_files_lib
finding unused and unreferenced files
-
decodetree
parser and generator
-
autumn
A recursive descent parser combinator library
-
number_range
parse list of numbers from/to human readable string
-
parsa
a functional combinator parsing library
-
is_number
Check if a string can be parsed as a number
-
pegy
A derive based parser generator
-
mexe
arithmetic expression evaluator
-
munch
Blazing fast, zero-copy parser combinator library with an elegant API for both strings and bytes
-
lexr
Flexible, powerful and simple lexing in Rust
-
tuck5
A pragmatic lexer/parser generator
-
langlang
parser generator based on Parsing Expression Grammars (tools)
-
enumchar
Rust derive macro for enums where each variant is represented by a single char
-
bnf_syntax_parser
The syntax parser based on BNF rules
-
udled-tokenizers
Tokenizers for udled
-
tree-sitter-odin
Odin grammar for tree-sitter
-
kir
IR for parse/print def/use support
-
abortable_parser
A parser combinator library with an emphasis on error handling
-
fancy_slice
that provides reflection for tree structures
-
parze
A clean, efficient parser combinator
-
estring
way to parse a string using type annotations
-
changelog_document
Feature-rich changelog format. Include a parser and serializer.
-
parser-compose
writing and composing parsers for arbitrary file or data formats
-
somen
An asynchronous parser combinator
-
pest_typed
A statically typed version of pest
-
gll
GLL parsing framework
-
tree-sitter-svelte-ng
Svelte grammar for tree-sitter
-
nom-greedyerror
Custom error type to take a deepest error
-
markab_parser
copy-less and rich-error-message parser combinator library
-
spain-vat-id
Spanish VAT ID numbers validation/verification
-
lrlex
lexer generator
-
tree-sitter-flatbuffers
Flatbuffers grammar for tree-sitter
-
thin-shunting
evaluating math expressions
-
lexer-rs
Lexical anaylzer framework for context-free text parsing into tokens
-
peresil
simplistic string parsing library
-
oak
A typed parser generator syntax extension for Parsing Expression Grammar (PEG)
-
alder
Parser combinator library inspired by Elm parser error messages
-
aott
Aspect Of The Tokens - a parser combinator framework
-
nameless-peg-parser
PEG, still unstable
-
pest_debugger
pest grammar debugger
-
muncher
Easy to use char muncher for writing a lexer
-
pag-parser
Parser-lexer fusion generator (parser generator)
-
cwmp
Parse and generate CWMP messages
-
wee-peg
Parsing Expression Grammar (PEG) parser generator
-
do-not-use-antlr-rust
ANTLR4 runtime for Rust
-
nom-regex
regular expressions for nom parsers
-
synattra
A Syn Attribute Parser Toolkit
-
pkl-parser
Pkl Parser!
-
chomp
A fast monadic-style parser combinator designed to work on stable Rust
-
nyst
parser library
-
minparser
parsing functions
-
ripeg
Incremental PEG parser Rust library
-
pest_tmp
The Elegant Parser
-
derive-finite-automaton
Procedural macro for generating finite automaton
-
marpa
Safe bindings to the libmarpa parsing engine
-
combine-language
Extra parser combinators, useful for parsing programming languages
-
stap
Stateful parser
-
syntacks
An opinionated parser library for Rust
-
memoir
self-describing parser combinators
-
static-regular-grammar
Derive macro for static regular grammar
-
pex
A nightly parser combinator library for Rust
-
gnaw
Conveniently chip small pieces off a slice or
str
to use elsewhere -
rust-bison-skeleton
Bison skeleton for Rust
-
abackus
Parser builder using EBNF
-
parslers
A Staged Selective Parser Combinator Library for the Rust Programming Language
-
strtoint
Parse integers from strings, with support for base prefixes
-
parco
Zero-cost parser combinators
-
oom
One or Many types (Haskell NonEmpty)
-
sudoku-variants
A flexible Sudoku engine that supports common variations and custom rules
-
parcours
Parser Combinators for Unique Results
-
tree-builder
Parser Generator library which uses Nom and procedural macros to generate recursive-descent parsers
-
shared-string
Split a string without another allocation
-
lalrpop-intern
string interner used by LALRPOP
-
gll-pg-core
A parser generator for GLL grammar, core library
-
textpos
A small library to track human-readable text positions
-
pest_derive
pest's derive macro
-
parsell
LL(1) streaming parser combinators
-
blex
A lightweight lexing framework
-
pcomb
A tiny parser combinator library
-
eles
ELES; Extensible Logical Expression Solver
-
parol-macros
Macros for LL(k) parser generator
parol
-
rzcalc
calculator expression parser and evaluater using recursive descent parser, written in rust
-
input-stream
IO streams similar to C++'s streams
-
pegtastic
Parsing Expression Grammar (PEG) parser generator
-
gll-pg-macros
A parser generator for GLL grammar, macros part
-
valk-utils
Dead simple functions that valkyrie_pilot uses, and maybe you can too
-
fabparse
A minimized parser combinator library
-
num-parse
Generic, JavaScript-like parseInt() functions for Rust
-
daisychain
a method chaining parsing library
-
ielr
Table generation backend for LR parser generators
-
nbnf_language
A parser for the NBNF language itself, and the parser generator
-
keyword-parser
Keyword parser for combine
-
chonk
A lightweight parser combinator framework
-
or-rs
or-rs's enum types
-
look_ahead_items
I was repeating, and sometimes I wanted to look ahead. Shifted by chunks instead of one.
-
enum_dispatch_pest_parser
Generate pest-based parsers with enum_dispatch integration for static method dispatch
-
peg-runtime
Runtime support for rust-peg grammars. To use rust-peg, see the
peg
crate. -
tinyparse
A tiny combinator parser library
-
lua_ir
lua runtime and IR generation
-
parseme
A framework for building robust parsers
-
zordon
low-level abstractions for zero-copy parsing and mutation
-
simple-cursor
A super simple character cursor implementation geared towards lexers/tokenizers
-
parcos
minimal parser combinator library
-
logos-cli
Create ridiculously fast Lexers
-
relex
building a regex-based lexer
-
enso-flexer
A finite-automata-based lexing engine
-
quake_infostring
Parse QuakeWorld info strings
-
regex-lexer
A regex-based lexer (tokenizer)
-
yap_streaming
Yap extension crate for parsing streams
-
noneifempty
Convert T to None if empty
-
pacosso
https://github.com/toschoo/pacosso/blob/master/README.md
-
gospel
Incremental byte munching
-
tree-sitter-typescript-codemod
TypeScript and TSX grammars for tree-sitter
-
recordkeeper-data-model
Abstract data model for recordkeeper
-
condex
Extract tokens by simple condition expression
-
combpop
Type-based parser combinator
-
cs-string-rw
create to read and write strings into or from binary format compatible with c# BinaryWriter and BinaryReader
-
ruly
parser generator from context free grammar
-
rustemo-compiler
Rustemo compiler and development tools
-
statemachine
working with statemachines
-
paco
parser combinator library
-
nom-bufreader-rp
BufReader adapter for nom parsers
-
glr
RNGLR parser generator
-
calculator-parser
calculation parser for user input
-
read-from
Supplies the ReadFrom and WriteTo traits
-
clip_core
Defines clip core traits
-
plex
A syntax extension for writing lexers and parsers
-
wagon-ident
Ident struct for WAGon. Used in various crates for various reasons
-
netgauze-serde-macros
Helper macros to make ser/deser binary protocols easier
-
safe-regex-compiler
Regex compiler for the safe-regex crate
-
cursortanium
A solid cursor for Rust
-
lemon-tree
Famous Lemon Parser Generator, designed as library that builds your parser transparently during cargo build. Use attributes to describe parser rules.
-
logos-iter
Extensions for Logos lexer
-
rcombinators
A parser combinator library in rust
-
rusty_lr
GLR, LR(1) and LALR(1) parser generator with custom reduce action
-
tree-sitter-julia
Julia grammar for tree-sitter
-
in-place-string-map
An in-place string modification library
-
simple-parser
runtime recursive descent parser generator
-
pgs
structuring save files from the Birdiesoft classic game Pokémon Simulator
-
doxygen-rs
Transform Doxygen to Rustdoc
-
chars_input
chars input
-
key-list
A very minimal crate to get you a specific sequence between two characters in a string, fast
-
re-set
Regular expression set parser at run time
-
string-to-num
A trait for easy parsing of decimal, hexidecmal, binary, and octal numbers
-
fhir-derive
FHIR-RS macro implementation
-
tree-sitter-fluentbit
fluent-bit grammar for tree-sitter
-
escafers
parser & generator for escape sequences
-
shtring
Split an input string into arguments by whitespace such that text between matching quotes is combined into a single argument
-
flexi-parse
flexible parsing
-
frithu
A robust, runtime parsing engine based on the Earley/Marpa algorithm
-
peginator_codegen
Buildscript support for peginator (a PEG parser generator)
-
oak_runtime
Parser generated by Oak depends on this library. Please consult the package Oak for more informations.
-
pag-compiler
Parser-lexer fusion generator (compiler interface)
-
new-pkl
Fastest PKL-parsing crate out there!
-
regex-lexer-lalrpop
A regex-based lexer (tokenizer)
-
rspg
LR(1) parser generator library
-
perplex-runtime
Runtime library for parsers generated by perplex
-
peruse
A small parser combinator library
-
envoke
ergonomic way to load environment variables into struct fields
-
peggle
regex-like parsing library, capable of handling Parsing Expression Grammar (PEG) rules
-
nom8
A byte-oriented, zero-copy, parser combinators library (fork for proposals for v8)
-
lalr
creating LALR(1) parsers from context-free grammars
-
husk
Rust bindings for the mvdan.cc/sh Golang library
-
combinedfun
A little
nom
-like parser combinator library which stays away from macros, while trying to achieve at least part of the expressiveness ofnom
-
prattle
General, configurable Pratt/TDOP parser
-
rslua_traits
Some traits for rslua
-
nom-bufreader
BufReader adapter for nom parsers
-
volt_parse
The advanced, slightly different take on the parser combinator concept
-
tokenate
do some grunt work of writing a tokenizer
-
sas-lexer-macro
Internal macro for sas-lexer crate
-
inference_core
Feakin is a architecture design and visual collaboration tool. This is the parser for Feakin.
-
ratatat
expressive parser combinators with caching
-
combine-proc-macro
Support for using
combine
parser combinators with theproc_macro
API -
wop
An front-end to lrp
-
from-str-sequential
A FromStr-like trait for enums, matching the first compatible variant
-
text-scanner
A UTF-8 char-oriented, zero-copy, text and code scanning library
-
pest_railroad
Railroad (aka syntax) SVG diagram generator for Pest parsers. It supports most (but not all) Pest grammar rules.
-
somen-decode
A byte string decoder for somen
-
sana
Create lexers easily
-
die-sir
A dice expression parser and evaluator
-
sashimi
straightforward, zero-copy, general-purpose parsing library. Opinionated by default, with customizable rules.
-
overpunch
support for signed overpunch numbers
-
dsntk-macros
dsntk | DecisionToolkit | Procedural and derive macros
-
regex-tokenizer
A regex tokenizer
-
source-span
Source code mapping and display utilities
-
nailgun
A PEG parser generator
-
tree-sitter-fsm
FSM grammar for tree-sitter
-
binator_context
Group commun context handle to use with binator
-
rusty_lr_buildscript
buildscipt tools for rusty_lr
-
parsit
very simple lib, the parsing combinators, recursive descendent that uses logos as lexer
-
indented-blocks
parser for indented blocks
-
pest_generator_tmp
pest code generator
-
escape_it_lib
Converts white-space characters into their escaped versions in provided Strings
-
from-regex
Derive deserialization of structs and enums from regex patterns
-
laps_regex
Tools for generating NFAs, DFAs and state-transition tables from regular expressions
-
attrs
An ergonomic parser library for
#[attributes]
, built on parser combinators -
pdl-derive
PDL's derive macro
-
strum-lite
Lightweight declarative macro for sets of strings
-
bitbite_derive
Adds Bitbite derive
-
cfgrammar
Grammar manipulation
-
bitvec-nom
Bit level parsing for nom with bitvec
-
rumtk-core
Core library for providing general functionality to support the other RUMTK crates. See rumtk-hl7-v2 crate as example
-
char-circle
A circular buffer for strings and traits for in-place string transforms
-
clippet
teeny way to have some nice byte structures that's easy to use
-
folder_compare
Compare two folders and get a list of changed and new files
-
env-cast
Macro to parse an environment variable to a numeric type at compile time
-
regular-expression
parsing, compiling, and executing regular expressions
-
yyjson-rs
Rust bindings for yyjson
-
lieval
A lightweight Rust crate for parsing and evaluating mathematical expressions from strings
-
honeycomb
A portable parser combinator library that does not require a runtime
-
grammar_tool
understanding LL(k) grammars
-
strum
macros for working with enums and strings
-
pest_grammars
pest popular grammar implementations
-
async-scgi
Async SCGI Client & Server
-
wagon-parser
Parser for the WAGon DSL
-
asciimath
Mathematical expression parser and evaluator
-
heterob
conversion between bytes/bits and heterogeneous lists (tuples)
-
jpar
A text-oriented, zero-copy, parser combinators library
-
simple-lexer
runtime lexer generator
-
ibuilder
Interactive builder for Rust types
-
simple-parser-bootstrap
runtime recursive descent parser generator
-
charred
char checking
-
eventree
creating lossless syntax trees
-
rust-ipmi
IPMI client library for rust
-
unic-char-property
UNIC — Unicode Character Tools — Character Property taxonomy, contracts and build macros
-
hex-magic
Macros for working with bytes and hexadecimal values
-
anpa
A generic monadic parser combinator library inspired by Haskell's parsec
-
dd_statechart
A Data-Driven implementation of Harel Statecharts designed for high-reliability systems
-
numsep
Adding thousands-seperators to numbers
-
noam
A byte-oriented, zero-copy, parser combinator library
-
transliterate
A string to string parser which avoids the intermediate tree by building the output string directly
-
logos-nom-bridge
Implement nom parsers using logos tokens
-
parol_runtime
Runtime library for parsers generated by the 'parol' parser generator
-
frombytes
Defines a cursor over a slice of bytes
-
libbytestat
Randomness analyzer
-
lex-map_editor_std
standard types and parser for lex-map_editor
-
pprzlink
Rust library for pprzlink
-
runtime-lexer
regex based lexer
-
parsimonious
parser combinators
-
ruminant
An exploration into implementing parser combinators
-
read-write-ext
ReadWriteExt trait with
chain_after
andtake_rw
forstd::io::Read + Write
structs -
collections-fromstr
Derives FromStr for collection types like Vec<T> or HashSet<T>
-
expression_macro
Procedural macros for compile-time mathematical expression parsing
-
tuker
A small tokenizer/parser library with an emphasis on usability
-
pest_consume_macros
Macros for pest_consume
-
parser-test
Declarative tester for parsers
-
shunting
evaluating math expressions
-
shelby
Data processing
-
kir-macros
The macros for kir
-
lexerus
annotated lexer
-
nom-trace
A tracer for nom parsers
-
dashu
set of big numbers
-
lighter
Macro for rewriting string matches as tries
-
gnurx-sys
Regular expression functionality from glibc extracted into a separate library, for Win32
-
prexel
A math expression evaluator
-
dsntk-feel-grammar
dsntk | DecisionToolkit | FEEL grammar
-
lexical-core
Lexical, to- and from-string conversion routines