-
nom
A byte-oriented, zero-copy, parser combinators library
-
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
-
lalrpop
convenient LR(1) parser generator
-
pom
PEG parser combinators using operator overloading without macros
-
tree-sitter-rust
Rust grammar for tree-sitter
-
pest
The Elegant Parser
-
nom-derive
Custom derive nom parsers from struct
-
bitreader
reading individual bits from a slice of bytes. You can read "unusual" numbers of bits from the byte slice, for example 13 bits at once. The reader internally keeps track of position within the buffer.
-
lrpar
Yacc-compatible parser generator
-
nimbleparse
Yacc grammar debugging tool
-
pest_generator
pest code generator
-
pest_meta
pest meta language parser and validator
-
rusty_lr_parser
macro line parser for rusty_lr
-
tree-sitter-swift
swift grammar for the tree-sitter parsing library
-
yap
Parser library. A lightweight, dependency free, parser combinator inspired set of utility methods to help with parsing strings and slices.
-
lelwel
Resilient LL(1) parser generator
-
tree-sitter-css
CSS grammar for tree-sitter
-
minimal-lexical
Fast float parsing conversion routines
-
fast-float
Fast floating-point number parser
-
safe-regex
Safe regular expression library
-
rusty_parser
A Generic compile-time Parser generator and pattern matching library written in Rust
-
locspan
Code mapping utility types and traits
-
antlr-rust
ANTLR4 runtime for Rust
-
gramatica
A compiler compiler for Rust implementing Earley's parser
-
peginator
PEG parser generator for creating ASTs in Rust (runtime)
-
pidgin
non-recursive grammars
-
oni-comb-parser-rs
parser combinators
-
pest_consume
A framework for processing the output of a pest-generated parser
-
cfg
manipulating context-free grammars
-
monch
Inspired by nom, but specifically for strings
-
splitty
a string splitter taking quotes into account
-
tree-sitter-elixir
Elixir grammar for the tree-sitter parsing library
-
rustemo
A LR/GLR parser generator
-
tree-sitter-bash
Bash grammar for tree-sitter
-
laps
Build lexers and parsers by deriving traits
-
trivet
Parser Library
-
peg
Parsing Expression Grammar (PEG) parser generator
-
bitvec-nom2
Bit level parsing for nom with bitvec
-
gallop
General LL(1) Parser
-
gramma
Generate a scannerless parser by declaring types
-
lieval
A lightweight Rust crate for parsing and evaluating mathematical expressions from strings
-
descape
Adds a single extension trait for &str to unescape any backslashes
-
pomelo
Lemon parser generator as a Rust procedural macro
-
yggdrasil-rt
Yggdrasil Shared Structure
-
tokenizer-lib
Tokenization utilities for building parsers in Rust
-
rustylr
executable for rusty_lr
-
lexerus
annotated lexer
-
cfgrammar
Grammar manipulation
-
chomp1
A fast monadic-style parser combinator designed to work on stable Rust
-
lrlex
lexer generator
-
rusttyc
writing type checkers with a lattice-like type system in rust
-
tree-sitter-r
R grammar for the tree-sitter parsing library
-
kiki
A minimalist parser generator for Rust
-
alkale
LL(1) tokenizer library for Rust
-
yz-string-utils
misc parsing-related string utils
-
tree-sitter-html
HTML grammar for tree-sitter
-
power_flow_data
RAW power flow data file parser
-
lexers
Tools for tokenizing and scanning
-
logos-codegen
Create ridiculously fast Lexers
-
pratt
parser for Rust
-
parse_int
Parse &str with common prefixes to integer values
-
parcelona
minimalistic elegance parser combinator library
-
tuckey
lexer/parser generation framework
-
parsa
a functional combinator parsing library
-
pa-rs
Parsing library using concepts of Parser combinators
-
lib-lexin
lexer library
-
rusticata-macros
Helper macros for Rusticata
-
parol_runtime
Runtime library for parsers generated by the 'parol' parser generator
-
lip
powerful parser combinators for creating reusable and flexible parsers
-
rflex
Fast lexer code generator for Rust
-
number_range
parse list of numbers from/to human readable string
-
rust-bison-skeleton
Bison skeleton for Rust
-
spreadsheet_addresses
Convert spreadsheet addresses ("A4", "B$7" and so on) to a struct and vice versa!
-
transduce
Zero-copy isomorphic parsing: your code should look like what it parses
-
langlang
parser generator based on Parsing Expression Grammars (tools)
-
css_forge
A robust and efficient CSS parsing library for Rust
-
simple-tokenizer
A tiny no_std tokenizer with line & column tracking
-
new-pkl
Fastest PKL-parsing crate out there!
-
mpl
Minimal parser combinator of Minimal Parsing Language (MPL) like Top-Down Parsing Language (TDPL)
-
earlgrey
parsing context-free grammars using Earley algorithm
-
bnf_rules
LR(1) parser generator
-
byte-parser
Parse a str or a slice with a function style
-
peggen
Generate recursive-descent & precedence climbing parsers
-
zero
zero-allocation parsing of binary data
-
decodetree
parser and generator
-
lemon-mint
Famous Lemon Parser Generator implemented in rust as library with API
-
thisenum
Assign constant literals to enum arms
-
lrtable
LR grammar table generation
-
lexer-rs
Lexical anaylzer framework for context-free text parsing into tokens
-
dynparser
Dynamic parser. You can define rules at run time. It's possible to use peg format
-
pest_typed_generator
Pest-typed's code generator
-
nameless-peg-parser
PEG, still unstable
-
winnow
A byte-oriented, zero-copy, parser combinators library
-
glue
parser combinator framework for parsing text based formats, it is easy to use and relatively fast too
-
pag-lexer
Parser-lexer fusion generator (derivative lexer)
-
ruly2
parser generator from context free grammar
-
shrimple-parser
Zero-dependency next-gen parsing combinator library with flexible error reporting
-
pest_vm
pest grammar virtual machine
-
take_sni
just parse sni from buf
-
lalrpop-intern
string interner used by LALRPOP
-
parsit
very simple lib, the parsing combinators, recursive descendent that uses logos as lexer
-
binator
Parser Combinator
-
nom-regex
regular expressions for nom parsers
-
manger
A performant, low-level, lightweight and intuitive combinatoric parser library
-
generator-combinator
Composes combinators to generate patterns of increasing complexity
-
sprout
growing simple, but beautiful AST trees 🌳
-
gll-pg-core
A parser generator for GLL grammar, core library
-
bitstream_reader
Reading bit sequences from a byte slice
-
chainchomp
Tinyest Opinionated parser combinator library for Rust
-
peekread
Allows peeking ahead in Read streams
-
pom-trace
PEG parser combinators using operator overloading without macros
-
accept
My personal parser combinator library, deciding what tokens to accept
-
autumn
A recursive descent parser combinator library
-
daisychain
a method chaining parsing library
-
lang_pt
A parser tool to generate recursive descent top down parser
-
enso-automata
A finite-automata-based lexing engine
-
valk-utils
Dead simple functions that valkyrie_pilot uses, and maybe you can too
-
strp
string parsing utility crate, supporting no_std contexts
-
lexer
plugin based lexical reader
-
oak
A typed parser generator syntax extension for Parsing Expression Grammar (PEG)
-
split-paragraphs
An iterator over the paragraphs of a string
-
parze
A clean, efficient parser combinator
-
tree-sitter-jinja2
jinja2 grammar for the tree-sitter parsing library
-
lexr
Flexible, powerful and simple lexing in Rust
-
munch
Blazing fast, zero-copy parser combinator library with an elegant API for both strings and bytes
-
wagon-ident
Ident struct for WAGon. Used in various crates for various reasons
-
aott
Aspect Of The Tokens - a parser combinator framework
-
parse-display-with
Custom formatting/parsing utilities for parse-display
-
fast_input
Fast and easy input from standard in, made for competetive programming
-
mexe
arithmetic expression evaluator
-
abortable_parser
A parser combinator library with an emphasis on error handling
-
ielr
Table generation backend for LR parser generators
-
estring
way to parse a string using type annotations
-
libreda-stream-parser
Very simple parser generator for parsing data streams
-
tuck5
A pragmatic lexer/parser generator
-
quake_infostring
Parse QuakeWorld info strings
-
flexi-parse
flexible parsing
-
somen
An asynchronous parser combinator
-
inpt
A derive crate for dumb type-level text parsing
-
parcours
Parser Combinators for Unique Results
-
rspg
LR(1) parser generator library
-
markab_parser
copy-less and rich-error-message parser combinator library
-
derive-finite-automaton
Procedural macro for generating finite automaton
-
alder
Parser combinator library inspired by Elm parser error messages
-
rusty_lr_buildscript
buildscipt tools for rusty_lr
-
pom-preview
PEG parser combinators using operator overloading without macros
-
winnow-rule
A procedural macro for defining winnow combinators in simple DSL
-
rushell_deps_pom
PEG parser combinators using operator overloading without macros
-
unscanny
Painless string scanning
-
or-rs
or-rs's enum types
-
combine-language
Extra parser combinators, useful for parsing programming languages
-
glr
RNGLR parser generator
-
peresil
simplistic string parsing library
-
ruminant
An exploration into implementing parser combinators
-
do-not-use-antlr-rust
ANTLR4 runtime for Rust
-
parcos
minimal parser combinator library
-
wee-peg
Parsing Expression Grammar (PEG) parser generator
-
fabparse
A minimized parser combinator library
-
rzcalc
calculator expression parser and evaluater using recursive descent parser, written in rust
-
lalry
creating LALR(1) parsers from context-free grammars
-
combine_wasi
Fast parser combinators on arbitrary streams with zero-copy support
-
nom8
A byte-oriented, zero-copy, parser combinators library (fork for proposals for v8)
-
tree-sitter-embedded-template
Embedded Template (ERB, EJS) grammar for the tree-sitter parsing library
-
skimmer
streams reader
-
parco
Zero-cost parser combinators
-
pex
A nightly parser combinator library for Rust
-
thin-shunting
evaluating math expressions
-
pest_debugger
pest grammar debugger
-
ripeg
Incremental PEG parser Rust library
-
pratt-gen
Generate recursive-descent & precedence climbing parsers
-
pest_typed
A statically typed version of pest
-
pest_tmp
The Elegant Parser
-
tree-builder
Parser Generator library which uses Nom and procedural macros to generate recursive-descent parsers
-
synattra
A Syn Attribute Parser Toolkit
-
marpa
Safe bindings to the libmarpa parsing engine
-
pag-parser
Parser-lexer fusion generator (parser generator)
-
static-regular-grammar
Derive macro for static regular grammar
-
chumsky-branch
branch combinator for the chumsky parsing library
-
gnaw
Conveniently chip small pieces off a slice or
str
to use elsewhere -
parol-macros
Macros for LL(k) parser generator
parol
-
muncher
Easy to use char muncher for writing a lexer
-
parslers
A Staged Selective Parser Combinator Library for the Rust Programming Language
-
tree-sitter-kotlin-ng
Kotlin grammar for tree-sitter
-
laps_regex
Tools for generating NFAs, DFAs and state-transition tables from regular expressions
-
oom
One or Many types (Haskell NonEmpty)
-
parsed
Parser combinators library
-
strtoint
Parse integers from strings, with support for base prefixes
-
peginator-cli
Command line interface for peginator (a PEG parser generator)
-
pacosso
https://github.com/toschoo/pacosso/blob/master/README.md
-
textpos
A small library to track human-readable text positions
-
rusty-snowflake
generating and parsing Snowflake IDs
-
abackus
Parser builder using EBNF
-
parse_me
Parser combinator crate. Provides a simple parser combinator crate for Rust.
-
peg-runtime
Runtime support for rust-peg grammars. To use rust-peg, see the
peg
crate. -
langlang_syntax
langlang is a parser generator based on Parsing Expression Grammars (library)
-
chonk
A lightweight parser combinator framework
-
memoir
self-describing parser combinators
-
pcomb
A tiny parser combinator library
-
gll-pg-macros
A parser generator for GLL grammar, macros part
-
kg-syntax
Runtime LR(1) parser generator library
-
kombi
A Parser Combinator Library
-
chomp
A fast monadic-style parser combinator designed to work on stable Rust
-
nyst
parser library
-
logos-iter
Extensions for Logos lexer
-
keyword-parser
Keyword parser for combine
-
rustemo-compiler
Rustemo compiler and development tools
-
destruct-lib
Destruct structs and enums for simpler combinator implementation
-
num-parse
Generic, JavaScript-like parseInt() functions for Rust
-
binator_context
Group commun context handle to use with binator
-
look_ahead_items
I was repeating, and sometimes I wanted to look ahead. Shifted by chunks instead of one.
-
calculator-parser
calculation parser for user input
-
tinyparse
A tiny combinator parser library
-
posix-regex
parsing POSIX regular expressions
-
logos-cli
Create ridiculously fast Lexers
-
bnf_rules_parser
LR(1) parser generator
-
zordon
low-level abstractions for zero-copy parsing and mutation
-
lemon-tree
Famous Lemon Parser Generator, designed as library that builds your parser transparently during cargo build. Use attributes to describe parser rules.
-
parseme
A framework for building robust parsers
-
char-circle
A circular buffer for strings and traits for in-place string transforms
-
enso-flexer
A finite-automata-based lexing engine
-
in-place-string-map
An in-place string modification library
-
transliterate
A string to string parser which avoids the intermediate tree by building the output string directly
-
combpop
Type-based parser combinator
-
string-to-num
A trait for easy parsing of decimal, hexidecmal, binary, and octal numbers
-
fkl_ext_api
Feakin is a architecture design and visual collaboration tool. This is the parser for Feakin.
-
parser_kostiantyn_cap_project_v1
My parser done as example for students
-
strtools
containing various string utilities
-
coolrule
A boolean expression evaluator. A Rust port of boolrule.
-
paco
parser combinator library
-
lalrpop-snap
convenient LR(1) parser generator
-
statemachine
working with statemachines
-
pdl-derive
PDL's derive macro
-
pegtastic
Parsing Expression Grammar (PEG) parser generator
-
volt_parse
The advanced, slightly different take on the parser combinator concept
-
enquote
Quotes and unquotes strings
-
cursortanium
A solid cursor for Rust
-
pest_derive
pest's derive macro
-
eles
ELES; Extensible Logical Expression Solver
-
lld-pg
lld-script parser and generator
-
wop
An front-end to lrp
-
char-lex
Create easy enum based lexers
-
from-str-sequential
A FromStr-like trait for enums, matching the first compatible variant
-
relex
building a regex-based lexer
-
nom-errors
Strong-typed errors support for nom parser combinator library
-
key-list
A very minimal crate to get you a specific sequence between two characters in a string, fast
-
blex
A lightweight lexing framework
-
tree-sitter-svelte-ng
Svelte grammar for tree-sitter
-
racc_runtime
RACC is a port of Berkeley YACC to Rust, and allows you to write grammar definitions directly in Rust source code
-
jpar
A text-oriented, zero-copy, parser combinators library
-
nano_parser_gen
A parser generator inspired by yacc (types and functions)
-
pahs
A pahsing (parsing) library
-
noam
A byte-oriented, zero-copy, parser combinator library
-
rxml_proc
Macros to, at compile time, validate strings against the CData, Name and NCName productions from the XML 1.0 grammar
-
pvm
A parsing virtual machine with a focus on expressibility of grammars
-
simple-lexer
runtime lexer generator
-
escape_it_lib
Converts white-space characters into their escaped versions in provided Strings
-
peggle
regex-like parsing library, capable of handling Parsing Expression Grammar (PEG) rules
-
nom-bufreader-rp
BufReader adapter for nom parsers
-
regex-lexer-lalrpop
A regex-based lexer (tokenizer)
-
pex-trie
A parser combinator library for Rust
-
escafers
parser & generator for escape sequences
-
fhir-derive
FHIR-RS macro implementation
-
langlang_value
langlang is a parser generator based on Parsing Expression Grammars (library)
-
ratatat
expressive parser combinators with caching
-
peruse
A small parser combinator library
-
tree-sitter-regex
Regex grammar for tree-sitter
-
strom
A str-oriented, nom inspired zero-copy parser combinators library
-
perplex
A grammar analyzer and LR(k)/GLR parser generator
-
kamo
assist in the creation of an interpreter or compiler and its associated runtime
-
banjin
Savage and simple parser
-
hime_sdk
Development kit for the generation of LR and RNGLR parsers programmatically or in command line. Full API for the manipulation of context-free grammars.
-
dotlr
An LR(1) parser generator and visualizer created for educational purposes
-
lambdascript
Educational tool illustrating beta reduction of typed and untyped lambda terms, parser generation
-
pm-lexer
sample lexer using the proc-macro crate, to be used in the pomelo testings
-
lox-scanner
lexical scanner for Lox
-
prattle
General, configurable Pratt/TDOP parser
-
nom-trace
A tracer for nom parsers
-
regex-lexer
A regex-based lexer (tokenizer)
-
simple-cursor
A super simple character cursor implementation geared towards lexers/tokenizers
-
rslua_traits
Some traits for rslua
-
nuscenes-data-pcd
Extension crate to nuscenes-data adding
pcd-rs
integration -
pct
-
oak_runtime
Parser generated by Oak depends on this library. Please consult the package Oak for more informations.
-
simple-parser-bootstrap
runtime recursive descent parser generator
-
from-regex
Derive deserialization of structs and enums from regex patterns
-
nailgun
A PEG parser generator
-
ruly
parser generator from context free grammar
-
tokenate
do some grunt work of writing a tokenizer
-
bitvec-nom
Bit level parsing for nom with bitvec
-
sana
Create lexers easily
-
somen-language
somen parser combinator for languages
-
dsntk-macros
dsntk | Decision Toolkit | Procedural and derive macros
-
chars_input
chars input
-
hime_redist
Redistributable runtime library for parsers generated with Hime (LR, RNGLR)
-
parsell
LL(1) streaming parser combinators
-
combinedfun
A little
nom
-like parser combinator library which stays away from macros, while trying to achieve at least part of the expressiveness ofnom
-
oni-comb-toys-rs
toys parser
-
grammar_tool
understanding LL(k) grammars
-
regular-expression
parsing, compiling, and executing regular expressions
-
pag-compiler
Parser-lexer fusion generator (compiler interface)
-
pest_generator_tmp
pest code generator
-
nom-bufreader
BufReader adapter for nom parsers
-
stringslice
A collection of methods to slice strings based on character indices rather than bytes
-
combine-proc-macro
Support for using
combine
parser combinators with theproc_macro
API -
logos-nom-bridge
Implement nom parsers using logos tokens
-
condex
Extract tokens by simple condition expression
-
simple-interner
append-only interner
-
peginator_codegen
Buildscript support for peginator (a PEG parser generator)
-
indented-blocks
parser for indented blocks
-
combine-regex-1
Re-export of regex 1.0 letting combine use both 0.2 and 1.0
-
parser-test
Declarative tester for parsers
-
lalr
creating LALR(1) parsers from context-free grammars
-
sashimi
straightforward, zero-copy, general-purpose parsing library. Opinionated by default, with customizable rules.
-
input-stream
IO streams similar to C++'s streams
-
pest_grammars
pest popular grammar implementations
-
somen-decode
A byte string decoder for somen
-
pegy
A derive based parser generator
-
prexel
A math expression evaluator
-
perplex-runtime
Runtime library for parsers generated by perplex
-
pegtastic-runtime
Runtime support for pegtastic grammars. To use pegtastic, see the
pegtastic
crate. -
bin_buffer
writing objects to binairy buffers
-
peg-pack
Versatile parser generator for PEG grammars
-
lighter
Macro for rewriting string matches as tries
-
s-expr
lightweight customizable s-expression parser and printer
-
folder_compare
Compare two folders and get a list of changed and new files
-
wagon-gll
GLL library for WAGon generated parsers
-
frithu
A robust, runtime parsing engine based on the Earley/Marpa algorithm
-
gll
GLL parsing framework
-
parse-up
parsing combinators that help the user build up to a successful parse
-
wagon-parser
Parser for the WAGon DSL
-
flexar
An extremely flexible lexer/parser (get it?) for writing your own programming language
-
collections-fromstr
Derives FromStr for collection types like Vec<T> or HashSet<T>
-
dd_statechart
A Data-Driven implementation of Harel Statecharts designed for high-reliability systems
-
hex-magic
Macros for working with bytes and hexadecimal values
-
parsimonious
parser combinators
-
numsep
Adding thousands-seperators to numbers
-
tree-sitter-jsdoc
JSDoc grammar for tree-sitter
-
libbytestat
Randomness analyzer
-
read-write-ext
ReadWriteExt trait with
chain_after
andtake_rw
forstd::io::Read + Write
structs -
shared-string
Split a string without another allocation
-
kg-lang
Runtime LR(1) parser generator library
-
runtime-lexer
regex based lexer
-
lex-map_editor_std
standard types and parser for lex-map_editor
-
flexi_func_declarative
exposes the fb! macro to create a function with a flexible signature
-
regex-tokenizer
A regex tokenizer
-
rspg-macros
Macros for rspg
-
frombytes
Defines a cursor over a slice of bytes
-
pestast_gen
pestast code generator