81 stable releases
3.0.0-alpha.2 | Nov 1, 2021 |
---|---|
2.28.0 | Sep 26, 2022 |
2.27.1 | Feb 5, 2022 |
2.25.2 | Oct 24, 2021 |
1.4.1 | Jun 24, 2017 |
#869 in Build Utils
26,277 downloads per month
Used in fewer than 55 crates
1.5MB
38K
SLoC
API to generate .rs
files.
This API requires protoc
command present in $PATH
or passed explicitly to Codegen
object.
extern crate protoc_rust;
fn main() {
protoc_rust::Codegen::new()
.out_dir("src/protos")
.inputs(&["protos/a.proto", "protos/b.proto"])
.include("protos")
.run()
.expect("Running protoc failed.");
}
It is advisable that protoc-rust
build-dependecy version be the same as
protobuf
dependency.
The alternative is to use protobuf-codegen-pure
.
API to generate .rs files
API to generate .rs
files to be used e. g. from build.rs.
Example code:
extern crate protoc_rust;
use protoc_rust::Customize;
fn main() {
protoc_rust::Codegen::new()
.out_dir("src/protos")
.inputs(&["protos/a.proto", "protos/b.proto"])
.include("protos")
.run()
.expect("protoc");
}
And in Cargo.toml
:
[build-dependencies]
protoc-rust = "2.0"
Note 1: This API requires protoc
command present in $PATH
.
Although protoc-gen-rust
command is not needed.
Note 2: Is advisable that protoc-rust
build-dependecy version be the same as protobuf
dependency.
The alternative is to use pure-rust .proto parser and code generator.
Dependencies
~2–11MB
~151K SLoC