diff options
Diffstat (limited to 'rust-format-all.nix')
| -rw-r--r-- | rust-format-all.nix | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/rust-format-all.nix b/rust-format-all.nix new file mode 100644 index 0000000..710f1ef --- /dev/null +++ b/rust-format-all.nix @@ -0,0 +1,20 @@ +{ writeShellApplication +, rustfmt +, +}: +writeShellApplication { + name = "rustfmt_all"; + + runtimeInputs = [ rustfmt ]; + + text = '' + # Using rustfmt instead of cargo fmt, because the latter doesn't support proc-macro crates + # Additionally, instead of emitting an error, it will "hang", waiting for input + while read -r file + do + rustfmt --edition 2021 -v "$@" "$file" || exit $? + done <<EOF + $(find . -type f -name "*.rs" -not -path "*target*") + EOF + ''; +} |
