pub struct Bundle {
pub descriptor_set: Vec<u8>,
pub messages: MessageManifest,
pub proto_files: Vec<RenderedProto>,
pub single_proto: Option<String>,
pub single_proto_compilable: bool,
pub package_cycle: Option<Vec<String>>,
pub file_count: usize,
pub include_root_count: usize,
pub dropped_duplicates: usize,
pub divergent_first_wins: Vec<String>,
pub name: String,
}Expand description
The in-memory result of bundling, returned regardless of what was written.
Fields§
§descriptor_set: Vec<u8>The combined FileDescriptorSet bytes (the authoritative .pb).
messages: MessageManifestFully-qualified message types + flagged roots.
proto_files: Vec<RenderedProto>One rendered proto3 file per package (+ a _wkt.proto base if central).
single_proto: Option<String>The whole set rendered as one .proto text file, if emitted.
single_proto_compilable: boolWhether single_proto is a valid compilable file (true, single-package)
or a combined multi-package view (false, use the .pb to compile).
package_cycle: Option<Vec<String>>If the packages are mutually recursive, the cycle (A -> B -> A): the
per-package .proto files then cannot recompile standalone (proto forbids
circular imports) — use the .pb. None ⇒ the render recompiles cleanly.
file_count: usizeDistinct .proto files discovered (after dedup).
include_root_count: usizeNumber of include roots resolved from the source.
dropped_duplicates: usizeDuplicate copies collapsed during reconcile.
divergent_first_wins: Vec<String>Import paths whose duplicate copies had divergent content but were
resolved by OnConflict::FirstWins (first kept, rest dropped). Empty under
the default Error. Non-empty means potential schema drift was overridden.
name: StringOutput basename used for written files.