149 Repositories
Rust script-macro Libraries
Cargo script subcommand
cargo-script cargo-script is a Cargo subcommand designed to let people quickly and easily run Rust "scripts" which can make use of Cargo's package eco
Rust macro that uses GPT3 codex to generate code at compiletime
gpt3_macro Rust macro that uses GPT3 codex to generate code at compiletime. Just describe what you want the function to do and (optionally) define a f
A CI inspired approach for local job automation.
nauman A CI inspired approach for local job automation. Features • Installation • Usage • FAQ • Examples • Job Syntax About nauman is an easy-to-use j
Quick'n dirty macro set for advent of code 2021
AOC quick'n dirty macro set Those are implemented using quick'n dirty procedural macros and libraries. Running the program Use cargo run --release --
Rust macro to make recursive function run on the heap (i.e. no stack overflow).
Decurse Example #[decurse::decurse] // 👈 Slap this on your recursive function and stop worrying about stack overflow! fn factorial(x: u32) - u32 {
Rust I18n is use Rust codegen for load YAML file storage translations on compile time, and give you a t! macro for simply get translation texts.
Rust I18n Rust I18n is use Rust codegen for load YAML file storage translations on compile time, and give you a t! macro for simply get translation te
A proc-macro to get Vecu8 from struct and vise versa
byteme A proc-macro to convert a struct into Vec and back by implemeting From trait on the struct. The conversion is Big Endian by default. We have ma
Yet another geter/setter derive macro.
Gusket Gusket is a getter/setter derive macro. Comparison with getset: gusket only exposes one derive macro. No need to derive(Getters, MutGetters, Se
Example of structuring a proc macro crate for testability
testing-proc-macros Example of structuring a proc macro crate for testability. See accompanying blog post for details. License Licensed under either o
Command line interface as a function.
Command line interface as a function. fncmd fncmd is an opinionated command line parser frontend that wraps around clap. The functionality is mostly i
A stupid macro that compiles and executes Rust and spits the output directly into your Rust code
inline-rust This is a stupid macro inspired by inline-python that compiles and executes Rust and spits the output directly into your Rust code. There
A Rust attribute macro to limit a function's number of runs over a specified period of time
throttle_my_fn: A Rust attribute macro to throttle the execution of functions throttle_my_fn is a Rust attribute macro to limit a function's number of
❗️ Small script to view GitHub notifications in the terminal
github-notifications Small script to view GitHub notifications in the terminal Shows and color-codes the notification source, eg if you're the owner o
✨ Safe, global singletons initialized at program start
✨ magic_static Safe, global singletons initialized at program start. Usage Simply add magic_static as a dependency in your Cargo.toml to get started:
Rust crate that provides a convenient macro to quickly plot variables.
Debug Plotter This crate provides a convenient macro to quickly plot variables. Documentation For more information on how to use this crate, please ta
An elegant language for script-kiddies and terminal squatters.
Tonic An elegant language for script-kiddies and terminal squatters. About I started Tonic to complete the Advent of Code 2021. My eventual goal is to
assay - A super powered testing macro for Rust
assay - A super powered testing macro for Rust as·say /ˈaˌsā,aˈsā/ noun - the testing of a metal or ore to determine its ingredients and quality. Rust
Diplo is a script runner and dependency manager made in rust mainly for Deno.
Diplo is a script runner and dependency manager made in rust mainly for Deno. Documentation Tricked.pro/diplo Installing - windows installer Features
Macro for stating unsafe assumptions in Rust.
assume A macro for stating unsafe assumptions in Rust. Using this macro, one can supply assumptions to the compiler for use in optimization. These ass
Rustification of the excellent GD Script Action RPG Tutorial by youtuber HeartBeast
Godot Action RPG w/Rust A GDNative implementation in Rust of youtuber HeartBeast 's great step-by-step turoial series creating a Godot Action RPG, usi
Rust derive macros for automating the boring stuff.
derived: Macros for automating the boring stuff The derived crate provides macros that can simplify all the boring stuff, like writing constructors fo
Attribute macro that generates negated versions of`is_something` functions
negate negate is a simple attribute macro that negates a given function. Usage #[negate] Given a function of the form is_* that returns a boolean valu
This crate defines a single macro that is a brainfunct compile-time interpreter.
Compile Protection This crate defines a single macro that is a brainfunct compile-time interpreter. One example is as follows #![recursion_limit = "18
A script language like Python or Lua written in Rust, with exactly the same syntax as Go's.
A script language like Python or Lua written in Rust, with exactly the same syntax as Go's.
A fully-featured lexer generator, implement as a proc macro
lexgen: A fully-featured lexer generator, implemented as a proc macro lexer! { // First line specifies name of the lexer and the token type return
atttribute macro for running a flaky test multiple times
flaky_test This attribute macro will register and run a test 3 times, erroring only if all three times fail. Useful for situations when a test is flak
Obake is a procedural macro for declaring and maintaining versioned data-structures.
Obake is a procedural macro for declaring and maintaining versioned data-structures. The name 'obake' is taken from the Japanese 'お化け (おばけ)', a class of supernatural beings in Japanese folklore that shapeshift.
zero runtime cost default arguments in rust
Default Arguments in Rust Enables default arguments in rust by macro in zero cost. Just wrap function with default_args! and macro with name of functi
Replace an app's icon from a png with a single terminal script. Made with Rust
Replace macOS App Icon Replace an app's icon from a png with a single terminal CLI. Made with Rust
The nightly_crimes!{} macro commits horrible crimes to allow you to enable nightly features on the stable compiler.
The nightly_crimes!{} macro commits horrible crimes to allow you to enable nightly features on the stable compiler.
A rust script to convert a better bibtex json file from Zotero into nice organised notes in Obsidian
Zotero to Obsidian script This is a script that takes a better bibtex JSON file exported by Zotero and generates an organised collection of reference
This crate provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you specified.
prae This crate provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you spec
concat-arrays: a rust macro for concatenating fixed-size arrays
concat-arrays: a rust macro for concatenating fixed-size arrays This crate defines concat_arrays!, a macro that allows you to concatenate arrays.
A copypastable guide to implementing simple derive macros in Rust.
A copypastable guide to implementing simple derive macros in Rust. The goal Let's say we have a trait with a getter trait MyTrait {
Parsing and inspecting Rust literals (particularly useful for proc macros)
litrs: parsing and inspecting Rust literals litrs offers functionality to parse Rust literals, i.e. tokens in the Rust programming language that repre
A Rust macro for writing nested loop expressions
loop_chain A Rust macro for writing nested loop expressions Usage | Examples | Docs Dependencies [dependencies] loop_chain = "0.1.1" Usage For express
An LR parser generator, implemented as a proc macro
parsegen parsegen is an LR parser generator, similar to happy, ocamlyacc, and lalrpop. It currently generates canonical LR(1) parsers, but LALR(1) and
Simple, extendable and embeddable scripting language.
duckscript duckscript SDK CLI Simple, extendable and embeddable scripting language. Overview Language Goals Installation Homebrew Binary Release Ducks
comfy is a flexible command script manager / runner written in Rust
comfy is a cross-platform command script manager / runner tool, which allows you to run commands in the command line itself, but being these predefined in a portable and universal .comfy file.
A Rust macro for writing regex pattern matching.
regexm A Rust macro for writing regex pattern matching.
proc-macro for accessing struct field names at runtime
field_names field_names is a Rust crate to expose a field or variant names from source code as strings at runtime. Example Consider a simple struct su
Rust Macro which loads files into the rust binary at compile time during release and loads the file from the fs during dev.
Rust Embed Rust Custom Derive Macro which loads files into the rust binary at compile time during release and loads the file from the fs during dev. Y
A macro-based html builder for rust
Horrorshow A macro-based html templating library, compatible with stable rust (currently requires rust = 1.37). Features This crate will degrade grac
:pencil: Compile-time HTML templates for Rust
maud Documentation (source) • API reference • Change log Maud is an HTML template engine for Rust. It's implemented as a macro, html!, which compiles
hado-rshado — A little macro for writing haskell-like do expressions without too much ceremony
hado Monadic haskell-like expressions brought to rust via the hado! macro What? A little macro for writing haskell-like do expressions without too muc
Macro for Python-esque comprehensions in Rust
Cute Macro for Python-esque list comprehensions in Rust. The c! macro implements list and hashmap comprehensions similar to those found in Python, all
Subcommand to show result of macro expansion
cargo-expand Once installed, the following command prints out the result of macro expansion and #[derive] expansion applied to the current crate. $ ca
An opinionated modal editor to simplify code editing from the terminal
(I'm currently refactoring the platform layer. So we have to first finish this cleanup before we're able to continue adding features) An opinionated m
A Linux script management CLI written in Rust
pier ~ A Linux script management tool A central repository to manage all your one-liners, scripts, tools, and CLIs. Add, remove, list, and run scripts