macro_rules! include_file_descriptor_set {
($package: tt) => { ... };
}Expand description
Include an encoded prost_types::FileDescriptorSet as a &'static [u8]. The parameter must be
the stem of the filename passed to file_descriptor_set_path for the tonic-build::Builder,
excluding the .bin extension.
For example, a file descriptor set compiled like this in build.rs:
โ
let descriptor_path = PathBuf::from(env::var("OUT_DIR").unwrap()).join("my_descriptor.bin")
tonic_build::configure()
.file_descriptor_set_path(&descriptor_path)
.compile_protos(&["proto/reflection.proto"], &["proto/"])?;Can be included like this:
โ
mod pb {
pub(crate) const FILE_DESCRIPTOR_SET: &[u8] = tonic::include_file_descriptor_set!("my_descriptor");
}ยงNote:
This only works if the tonic-build output directory has been unmodified.
The default output directory is set to the OUT_DIR environment variable.
If the output directory has been modified, the following pattern may be used
instead of this macro.
โ
mod pb {
pub(crate) const FILE_DESCRIPTOR_SET: &[u8] = include_bytes!("/relative/protobuf/directory/descriptor_name.bin");
}