#[non_exhaustive]pub enum Schema {
}Expand description
Finite type metadata, emitted by Wire derives and bounded built-ins. Manual Wire implementations default to Opaque and cannot generate bindings.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Opaque
No trustworthy generated projection is available.
Unit
Zero-byte unit.
Bool
A strict boolean byte.
Unsigned(u8)
Unsigned integer width in bits.
Signed(u8)
Signed integer width in bits (i8 is a raw two’s-complement byte).
Float(u8)
Finite IEEE-754 width in bits (32 or 64); preserves signed zero.
Bytes(usize)
Bytes with a maximum length.
Text(usize)
UTF-8 text with a maximum byte length.
List(&'static Schema, usize)
Element schema and maximum count.
Array(&'static Schema, usize)
Element schema and exact count, without a length prefix.
Option(&'static Schema)
Optional value, with explicit None/Some tags.
Result(&'static Schema, &'static Schema)
Ok and Err payloads respectively.
Record(&'static [Field])
Fields in their explicit wire order.
Enum(&'static [Variant])
Alternatives selected by explicit transmitted IDs.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Schema
impl RefUnwindSafe for Schema
impl Send for Schema
impl Sync for Schema
impl Unpin for Schema
impl UnsafeUnpin for Schema
impl UnwindSafe for Schema
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more