This way, the crates can be published without interfering with potential future non-bindings `nix-` crates, if Nix proper wants to have native rust code, for instance.
12 lines
728 B
Markdown
12 lines
728 B
Markdown
# nix-bindings-bindgen-raw
|
|
|
|
This crate contains generated bindings for the Nix C API.
|
|
**You should not have to use this crate directly,** and so you should probably not add it to your dependencies.
|
|
Instead, use the `nix-bindings-util`, `nix-bindings-store` and `nix-bindings-expr` crates, which _should_ be sufficient.
|
|
|
|
## Design
|
|
|
|
Rust bindgen currently does not allow "layered" libraries to be split into separate crates.
|
|
For example, the expr crate would have all-new types that are distinct and incompatible with the store crate.
|
|
|
|
Ideally bindgen will support reusing already generated modules, and we could move the code generation into the appropriate crates, so that the system dependencies of each crate become accurate.
|