| commit | 2515e78aaefcd6a632b39262ccbe8da5e6a73b86 | [log] [tgz] |
|---|---|---|
| author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Wed Mar 29 04:26:56 2023 +0000 |
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Wed Mar 29 04:26:56 2023 +0000 |
| tree | 52ddb6e645db2fa36d5772c15b5d4cc47a662d62 | |
| parent | 4bf284e2a57c13ae8a1382cf5342432fe343f872 [diff] | |
| parent | d82ae3593746465efd98a2e253a0c16e4e46bf8f [diff] |
Snap for 9839270 from 7b6a2cfdc1efd2e3bad0da1b885faec6555d210b to udc-release am: d82ae35937 Original change: https://googleplex-android-review.googlesource.com/c/platform/external/rust/crates/protobuf-codegen/+/22328590 Change-Id: I3fecd30bed6bf32e35ebb1b73af53d8480499f74 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This crate contains protobuf code generator implementation and a protoc-gen-rust protoc plugin.
This crate:
protoc-gen-rust plugin for protoc commandThis crate is not meant to be used directly, in fact, it does not provide any public API (except for protoc-gen-rust binary).
Code can be generated with either:
protoc-gen-rust plugin for protoc orprotoc-rust crate (code generator which depends on protoc binary for parsing of .proto files)protobuf-codegen-pure crate, similar API to protoc-rust, but uses pure rust parser of .proto files.protoc-gen-rust plugin for protocWhen non-cargo build system is used, consider using standard protobuf code generation pattern: protoc command does all the work of handling paths and parsing .proto files. When protoc is invoked with --rust_out= option, it invokes protoc-gen-rust plugin. provided by this crate.
When building with cargo, consider using protoc-rust or protobuf-codegen-pure crates.
protoc-gen-rust if you have to(Note protoc can be invoked programmatically with protoc crate)
protoc binary.On OS X Homebrew can be used:
brew install protobuf
On Ubuntu, protobuf-compiler package can be installed:
apt-get install protobuf-compiler
Protobuf is needed only for code generation, rust-protobuf runtime does not use protobuf library.
protoc-gen-rust program (which is protoc plugin)It can be installed either from source or with cargo install protobuf command.
protoc-gen-rust to $PATHIf you installed it with cargo, it should be
PATH="$HOME/.cargo/bin:$PATH"
protoc --rust_out . foo.proto
This will generate .rs files in current directory.
This is documentation for version 2 of the crate.
Version 3 of the crate (currently in development) encapsulates both protoc and pure codegens in this crate.