296 Repositories
Rust macro-parser Libraries
ClangQL is a tool that allow you to run SQL-like query on C/C++ Code instead of database files using the GitQL SDK
ClangQL - Clang AST Query Language ClangQL is a tool that allow you to run SQL-like query on C/C++ Code instead of database files using the GitQL SDK.
An LR(1) parser generator and visualizer created for educational purposes.
.lr An LR(1) parser generator and visualizer created for educational purposes. Table of Contents What is an LR(1) parser? Why did you make this? How c
Rustato: A powerful, thread-safe global state management library for Rust applications, offering type-safe, reactive state handling with an easy-to-use macro-based API.
Rustato State Manager A generical thread-safe global state manager for Rust Introduction • Features • Installation • Usage • Advanced Usage • Api Refe
🚧 SysML parser for Rust.
SysML.rs 🚧 This is presently under heavy construction. 🛠️ Prerequisites Rust 1.70+ ⬇️ Installation Installation via Cargo $ cargo add sysml 👉 Examp
Shiva library: Implementation in Rust of a parser and generator for documents of any type
Shiva Shiva library: Implementation in Rust of a parser and generator for documents of any type Features Common Document Model (CDM) for all document
This library implements the flip-flop operator from Perl and Ruby as a Rust macro.
flip_flop.rs This library implements the flip-flop operator from Perl and Ruby as a Rust macro. Changelog April 1, 2024: Version 1.0.0. Usage The flip
Djotters is a Djot parser and translater written via parser combinators, in rust.
🎭 Djotters Turning your Djot (markdown) into lovely HTML! Djotters is here to let you draft up a document and watch it render in real time. If you wa
Style terminal outputs in a minimal, macro-based, and dead simple way.
sty 🌈 $\mathbb{\color{red}{Style \ } \color{lightblue}{terminal}\ \color{black}{outputs \ }\color{gray}{\ in\ a} \color{magenta}{\ minimal}\color{gra
Rohanasantml an easy alternative to html!
Rohanasantml: An alternative to html An easy way to write your messy html code in a better way: html head title {Rohanasantml} title
The Simplest Parser Library (that works) in Rust
The Simplest Parser Library (TSPL) TSPL is the The Simplest Parser Library that works in Rust. Concept In pure functional languages like Haskell, a Pa
A tool that allow you to run SQL-like query on local files instead of database files using the GitQL SDK.
FileQL - File Query Language FileQL is a tool that allow you to run SQL-like query on local files instead of database files using the GitQL SDK. Sampl
A procedural macro that copy-pastes match arms for new type variant enums.
All the same! If you ever had code that looks like this: use std::io; use std::pin::Pin; use std::task::{Context, Poll}; use tokio::io::AsyncWrite; us
Create Streamdeck Macros For Helldivers 2 Strategems!
Helldivers 2 Stratagem Macro Engine For Streamdeck This program contains macros for various stratagems to use. All macros are contained in the macro_e
The non-opinionated Rust-based commit message linter.
Documentation | Website git-sumi The non-opinionated Rust-based commit message linter Transform your commit practices with flexible linting for consis
A device-tree source parser, analyzer and language server.
Ginko A device-tree source parser, analyzer and language server. The main goal of this project is to make working with device-trees easy. For example,
Just provide a macro for a certain programming language.
Trust me, this is safe! A macro wrap unsafe keyword into safe! macro. Always trust programmers. use std::alloc::{alloc, dealloc, Layout}; use trust_m
Implements the packet parser for Gran Turismo 7 telemetry data, allowing a developer to retrieve data from a running game.
gran-turismo-query Implements the packet parser for Gran Turismo 7 telemetry data, allowing a developer to retrieve data from a running game. Features
wait what? generate your entire infra from rust macros
infra as macro translate rust structs to terraform at compile time // your infra is a macro static DB: Postgres = Postgres16! { host: "env.host",
A parser combinator that is fully statically dispatched and supports both sync/async.
XParse A parser combinator that is fully statically dispatched and supports both sync & async parsing. How to use An example of a very simple JSON par
Rust macro to use a match-like syntax as a elegant alternative to nesting if-else statement
cond Rust macro to use a match-like syntax as an elegant alternative to many if-else statements. I got the idea from empty Go switch statements. I tho
🔨 A JSON parser that will return span informations
Spanned Json Parser This crate is a json parser that will return span information for values, which mean lines and column number. It is also compati
A Rust macro for quickly unwrapping a refutable pattern.
unwrap_let! A Rust macro for quickly unwrapping a refutable pattern. Install Add unwrap_let to your dependency by running cargo add unwrap_let or edit
Bindings for jsonpath-rust library
jsonpath-rust-bindings This package contains Python bindings for jsonpath-rust library by besok. The details regarding the JsonPath itself can be foun
This library provides a convenient derive macro for the standard library's std::error::Error trait.
derive(Error) This library provides a convenient derive macro for the standard library's std::error::Error trait. [dependencies] therror = "1.0" Compi
A procedural macro to generate a new function implementation for your struct.
Impl New 🦀 A procedural macro to generate a new function implementation for your struct. 🚀 Add to your project Add this to your Cargo.toml: [depende
BitTorrent peer ID registry/parser/(soon) encoder for Rust
BitTorrent peer ID registry/parser/(soon) encoder By convention, BitTorrent clients identify themselves and their versions in peer IDs they send to tr
APK manifest & resources parser in Rust.
BXMLRS bxmlrs is a Rust library (WIP) for parsing binary Android XML files (AndroidManifest.xml). Usage use bxmlrs::parser; use quick_xml::reader::Rea
todo2(a.k.a. todo or die) - A better todo! macro inspired from searls/todo_or_die
todo2 todo2(a.k.a. todo or die) - A better todo! macro inspired from searls/todo_or_die This crate provides a better todo! macro, which allows you to
A SQL query parser written using nom.
sqlparser-nom A SQL query parser written using nom. Query Select From Where Order by Limit CTE Group by Having Aggregate Window Pratt Parsing Friendly
Enhance Rust errors with file and line details using the `#[wherr]` macro for clearer debugging.
wherr Crate Discuss wherr on Hacker News Enhance Rust's ? operator by appending file and line number details to errors, simplifying the debugging proc
SP3 Precise GNSS Orbit and Clock parser :artificial_satellite:
SP3 SP3 Precise GNSS Orbit files parser. SP3 is specifid by IGS. The parser only supports Revisions C & D at the moment and rejects revisions A & B. G
Macro to print variable(s) with values nicely (stripped from release builds)
log_macro Macro to print variable(s) with values nicely (stripped from release builds) Install cargo add log_macro Use Add this to top of file: #[mac
proc-macro to help with using surrealdb's custom functions
SurrealDB Functions This is a proc-macro crate that given a path to a .surql file or a folder of .surql files, will parse DEFINE FUNCTION fn::s inside
Parse, edit and merge Prometheus metrics exposition format
promerge Promerge provides minimalistic and easy to use API to parse and manipulate Prometheus metrics. A simple usecase could be collecting metrics f
Attribute macro for implementing methods on both Foo and ArchivedFoo.
rkyv_impl Implement methods for Foo and ArchivedFoo in a single impl block. use rkyv::Archive; use rkyv_impl::*; use std::iter::Sum; #[derive(Archive
A HTML to node macro powered by rstml.
html-node A HTML to node macro powered by rstml. Features Text escaping Pretty-printing NEW: type-safe elements and attributes! (example) Example let
Rust parser/validator for Debian version strings
debian version handling in rust This simple crate provides a struct for parsing, validating, manipulating and comparing Debian version strings. It aim
A handwritten fault-tolerant, recursive-descent parser for PHP written in Rust.
PHP-Parser A handwritten fault-tolerant, recursive-descent parser for PHP written in Rust. Warning - this is still alpha software and the public API i
A macro to generate constructor to instanicate structs from JsValue using duck-typing.
ducktor ducktor is a Rust crate that allows you to create types from wasm_bindgen::JsValue using duck typing. With ducktor, you can define a struct th
derive(Code) simplifies error handling by providing an easy-to-use enumeration of error codes
enum-code Introduction enum-code is a derive macro for enum types. This library generates code that associates error codes with error types. It can be
Write simple proc-macros inline with other source code.
script-macro An experimental way to write simple proc-macros inline with other source code. Did you ever end up getting frustrated at the boilerplate
Rust Macros to automate the addition of Paths/Schemas to Utoipa crate, simulating Reflection during the compilation phase
utoipa_auto_discovery Rust Macros to automate the addition of Paths/Schemas to Utoipa crate, simulating Reflection during the compilation phase Crate
Compile-time lifetimes for comments.
todo_by Compile-time lifetimes for comments. To use this macro, add it to your dependencies via Cargo: cargo add todo_by Then, import and invoke the m
A cross platform forensic parser written in Rust!
artemis artemis is a powerful command line digital forensic and incident response (DFIR) tool that collects forensic data from Windows and macOS endpo
λ-calculus parser made by rust
Lambda Calculus Parser This is a parser for λ-calculus expressions. It takes a λ-terms as input, parses it and returns a JSON representation of the te
A WIP svelte parser written in rust. Designed with error recovery and reporting in mind
Svelte(rs) A WIP parser for svelte files that is designed with error recovery and reporting in mind. This is mostly a toy project for now, with some v
Here we will show you how to build a simple parser.
A Rustic invitation to parsing: Calculator demo This is the code repository that accompanies the Rustic invitation to parsing blog post. It provides a
PE Parsing, but blazing fast
PE Parser A blazing fast 🔥 PE Parser written in Rust Motivation The main goals of pe-parser is to write something suitable for a PE Loader. Is editin
Convert curl command to a ParsedRequest
CURL Parser Nowadays, most of the APIs provide CURL examples to allow users to try out the APIs without any entry barriers, but it takes time to diges
ChatGPT powered Rust proc macro that generates code at compile-time.
gpt-macro ChatGPT powered Rust proc macro that generates code at compile-time. Implemented Macros auto_impl!{} #[auto_test(...)] Usage Get ChatGPT API
Flexible deriving macro.
This library is a slightly more convenient version of derive for newtype pattern. = See also Deriving via Basic Usage #[derive(DerivingVia)] and then
A formatter for the leptos view! macro
leptosfmt A formatter for the leptos view! macro All notable changes are documented in: CHANGELOG.md Install cargo install leptosfmt or for trying out
Proc. macro to generate C-like `enum` tags.
Continuous Integration Documentation Crates.io #[derive(EnumTag)] This crate provides a proc. macro to derive the EnumTag trait for the given Rust enu
A collection of crates to make minecraft development (client, server) with rust possible.
rust-craft rust-craft is a collection of crates to make minecraft development (client, server) with rust possible. Motivation There's no better way of
p5.js diagram within rustdoc
p5doc p5.js diagram within rustdoc Example This crate introduces a proc-macro #[p5doc::p5doc], which converts p5doc inline code in Markdown into a HTM
Lua bytecode parser written in Rust using nom, part of metaworm's lua decompiler
luac-parser (中文) lua字节码解析器, 目前支持 lua51, lua53, lua54 这是目前效果最好的lua反编译器 metaworm's luadec 的一部分 可以基于此代码定制你所需的lua字节码解析器,编译成WASM,让metaworm's luadec加载使用,来反编
A parser for the .map file included in the aimware leak
a utility I wrote to parse the map file included with the recent aimware self-leak. there is also an IDAPython script to import the symbol information into IDA.
Lightweight, higher-order parser in Rust.
Higher Order Parser HOP is a lightweight, higher-order parser in Rust. Hi-Parser provides a more Haskell-like parser style, and explores the ? syntax
A parser combinator for parsing &[Token].
PickTok A parser combinator like nom but specialized in parsing &[Token]. It has similar combinators as nom, but also provides convenient parser gener
Simple rust asset handling derive macro for enums, and a proc-macro learning resource!
asset-derive Summary • Todos • Docs Summary Simple Rust asset loading derive macro for Enums, and a resource for learning proc-macros! Please feel fre
Alpha Hyprland/Hyprpaper/Hypr configuration file parser
Hyprland/Hyprpaper/Hypr configuration file parser [maintainer=@yavko]
Handy macro to generate C-FFI bindings to Rust for Haskell
hs-bindgen Handy macro to generate C-FFI bindings to Rust for Haskell. This library intended to work best in a project configured by cargo-cabal. N.B.
Lexer and parser collections.
laps Lexer and parser collections. With laps, you can build parsers by just defining ASTs and deriving Parse trait for them. Usage Add laps to your pr
rsv is a command line tool to deal with small and big CSV, TXT, EXCEL files (especially 10G)
csv, excel toolkit written in Rust rsv is a command line tool to deal with small and big CSV, TXT, EXCEL files (especially 10G). rsv has following fe
A fault-tolerant, recursive-descent parser for Ara Programming Language 🌲
Ara Parser A fault-tolerant, recursive-descent parser for Ara Programming Language 🌲 Note: This project is a hard-fork of php-rust-tools/parser Speci
A language parser tool to build recursive descent top down parser.
lang-pt A language parser tool to generate recursive descent top down parser. Overview Parsers written for the languages like Javascript are often cus
A convenient macro for building PathBufs in Rust.
pathbuf pathbuf is a simple crate which provides the pathbuf macro to conveniently construct the Rust PathBuf type. Example use pathbuf::pathbuf; use
The PXP parser.
PHP-Parser A handwritten fault-tolerant, recursive-descent parser for PXP (the PHP superset) written in Rust. Warning - this is still alpha software a
Emulator and debugger for LPRS1 ISA & CPU
About LPRSemu is a simple emulator and debugger for LPRS1 ISA & CPU. It supports loading programs from assembly text files, binary string representati
Simple Rust derive-macro that simplifies integral enum creation
Integral enum A simple way to define integer-like enums. This macro implements bunch of traits that are usually implemented via looooong derive(..) at
A micro crate that simplifies a bit the use of the std macro thread_local!.
with-thread-local A micro crate that simplifies a bit the use of the std macro thread_local!. extern crate regex; use with_thread_local::with_thread_
Compiler front-end foundation technology.
Lady Deirdre. Compiler front-end foundation technology. If you want to create your own programming language with IDE support from day one, or if you a
Library and proc macro to analyze memory usage of data structures in rust.
Allocative: memory profiler for Rust This crate implements a lightweight memory profiler which allows object traversal and memory size introspection.
A minimal and fast zero-copy parser for the PE32+ file format.
peview A minimal and fast zero-copy parser for the PE32+ file format. Goal This project aims to offer a more light weight and easier to use alternativ
Procedural macro to derive Serde serializer-deserializer for Prost
prost-serde-derive prost-serde-derive is a procedural macro to generate Serde serializers and deserializers for Prost-generated structs. Rationale Cur
Macro to customize the behavior of `?`
::custom-try Macro to customize the behavior of ? Examples use ::custom_try::custom_try; #[repr(transparent)] pub struct FfiResult { pub status_c
Extensible BBCode parser with scoping rules, auto close tags
More BBCode parsers? Yeah! I needed something highly extensible, flexible, and specifically WITH scoping rules so it always produces correct HTML. For
An attribute macro to simplify writing simple command line applications.
fncli An attribute macro to simplify writing simple command line applications. Example #[fncli::cli] fn main(a: i32, b: i32) { println!("{}", a +
A vcf parser that use memory mapping to get high performance.
biommap An efficient bioinformatics file parser based on memory mapping of file. WARNING: biommap work only on uncompressed seekable file biommap is t
A parser and matcher for route patterns in Rust 🦀
Route Pattern A parser and matcher for a popular way to create route patterns. Patterns like these that include regular expressions, delimited in this
A proc macro for creating compile-time checked CSS class sets, in the style of classNames
semester Semester is a declarative CSS conditional class name joiner, in the style of React's classnames. It's intended for use in web frameworks (lik
Python wrapper for Rust's httparse HTTP parser
httparse Python wrapper for Rust's httparse. See this project on GitHub. Example from httparse import RequestParser parser = RequestParser() buff =
hashmap macro for creating hashmap from provided key/value pairs
HashMap Macro Creates a HashMap from provided key/value pairs. Usage use std::collections::HashMap; use hashmap_macro::hashmap; let m: HashMap&str,
CSGO demo parser for Python
CSGO demo parser for Python Demo parser for Counter-Strike: Global Offensive. Parser is used to collect data from replay files (".dem" files). The goa
The parser library to parse messages from crypto-crawler.
crypto-msg-parser The parser library to parse messages from crypto-crawler. Architecture crypto-msg-parser is the parser library to parse messages fro
A rust proc-macro which allows for reading and writing to remote objects through a generated enum
Remote-Obj A rust proc-macro which allows for reading and writing fields/variants of (possibly nested) remote objects by generating a single enum whic
Custom formatting for Rust.
custom-format This crate extends the standard formatting syntax with custom format specifiers, by providing custom formatting macros. It uses : (a spa
Fennel language server protocol (LSP) support.
fennel-language-server Fennel language server protocol (LSP) support. fennel-language-server is currently in a very early stage and unreliable. Use it
A parser and evaluator of spreadsheet-like formulas
Formula A parser and evaluator of spreadsheet-like formulas Formula is in its early stages, so it's better to be used cautiously. So far we have the f
Macro for fast implementing serialize methods in serde::Serializer trait
impl_serialize! This library provides a simple procedural macro for fast implementing serialize methods in serde::Serializer trait. [dependencies] imp
Parser and test runner for testing compatable common Ethereum full node tests against Polygon Zero's EVM.
EVM Test Parses and runs compatible common Ethereum tests from ethereum/tests against Polygon Zero's EVM. Note: This repo is currently very early in d
Watch for changes on a webpage and do anything with it!
Sukurappa Watch for changes on a webpage and do anything with it! Install With cargo: cargo install sukurappa Or use the install-script and add $HOME/
A low-level gltf parser implemented on nanoserde
Goth-gltf aims to be a low-level, unopinionated reader for glTF files. In comparison with gltf-rs, it: Represents the glTF JSON structure transparentl
Proc macro implementation of #[naked]
#[naked] Documentation This crate provide a proc macro version of the #[naked] attribute which can be used on stable Rust. Example // The SYSV64 calli
Motoko concrete syntax parser in Rust.
motoko.rs Motoko concrete syntax parser and dynamic evaluator (VM) in Rust. Motoko VM The Motoko VM explores a more dynamic way for Motoko to execute.
An IRC (RFC1459) parser and formatter, built in Rust.
ircparser An IRC (RFC1459) parser and formatter, built in Rust. ircparser should work on basically any Rust version, but the earliest version checked
PromQL Parser in Rust w/ native Node bindings
⚙️ promql-parser-js PromQL parsing wasm module based on Rust crate promql-rs Status Experiemental, don't use it! Install npm install @qxip/promql-pars
Parse RISC-V opcodes to provide more detailed structured data
riscv-opcodes-parser Parse RISC-V opcodes to provide more detailed structured data. License Licensed under either of Apache License, Version 2.0 (LICE
An interpreted LISP-like language. Made in Rust.
RISP Warning: The language is a work in progress. It's lacks many features and might not be stable. RISP is an interpreted LISP-like language. It's wr
A tiny whitespace interpreter/virtual machine in rust
a tiny whitespace interpreter/virtual machine in rust - executes some 809.7 million whitespace instructions per second* - I am tempted to declare this the fastest VM for whitespace in the world, but I cannot be sure :)