10 breaking releases

0.11.1 Jan 3, 2024
0.11.0 Oct 29, 2023
0.10.0 Jul 27, 2022
0.8.0 Apr 16, 2021
0.2.0 Oct 1, 2017

#131 in Procedural macros

Download history 1108/week @ 2023-12-22 372/week @ 2023-12-29 135/week @ 2024-01-05 144/week @ 2024-01-12 176/week @ 2024-01-19 132/week @ 2024-01-26 125/week @ 2024-02-02 176/week @ 2024-02-09 248/week @ 2024-02-16 237/week @ 2024-02-23 225/week @ 2024-03-01 343/week @ 2024-03-08 255/week @ 2024-03-15 369/week @ 2024-03-22 360/week @ 2024-03-29 507/week @ 2024-04-05

1,531 downloads per month
Used in atsamv71q21rt

MIT license

14KB
267 lines

crates.io crates.io CircleCI CI

Form

A library for splitting apart a large file with multiple modules into the idiomatic rust directory structure, intended for use with svd2rust. Creates a lib.rs as well as a subdirectory structure in the target directory. It does NOT create the cargo project or the cargo manifest file.

It's advised (but not necessary) to use rustfmt afterwards.

Usage:

Arguments:

    -i, --input FILE    OPTIONAL: input file to read, defaults to stdin
    -o, --outdir DIR    set output directory
    -h, --help          print this help menu
    -v, --version       print version information

Intended usage (using svd2rust 0.12.1 and before):

svd2rust -i FOO.svd | form -o ~/private/code/form/test/src

Usage with svd2rust 0.13.0 and later can be found in svd2rust's documentation.

Advanced usage:

cargo install form
export RUST_LOG=form=debug
export RUST_BACKTRACE=1
form -i ~/private/code/form/resources/full-lib.rs -o ~/private/code/form/test/src

Dependencies

~4.5–6MB
~109K SLoC