pub trait WireSchema {
const IS_UNIT: bool = false;
// Required method
fn append_schema(builder: &mut WireSchemaBuilder) -> i32;
// Provided methods
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool { ... }
fn wire_type_id() -> String { ... }
}Expand description
Appends the concrete type’s schema directly to a shared wire arena.
Provided Associated Constants§
Required Methods§
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Provided Methods§
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn wire_type_id() -> String
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl WireSchema for ()
impl WireSchema for ()
const IS_UNIT: bool = true
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for DateTime<Utc>
impl WireSchema for DateTime<Utc>
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for Duration
impl WireSchema for Duration
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for PathBuf
impl WireSchema for PathBuf
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for String
impl WireSchema for String
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for bool
impl WireSchema for bool
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for char
impl WireSchema for char
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for f32
impl WireSchema for f32
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for f64
impl WireSchema for f64
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for i8
impl WireSchema for i8
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for i16
impl WireSchema for i16
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for i32
impl WireSchema for i32
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for i64
impl WireSchema for i64
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for str
impl WireSchema for str
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for u8
impl WireSchema for u8
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for u16
impl WireSchema for u16
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for u32
impl WireSchema for u32
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for u64
impl WireSchema for u64
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl WireSchema for usize
impl WireSchema for usize
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C, D, E, F, G, H> WireSchema for (A, B, C, D, E, F, G, H)where
A: WireSchema,
B: WireSchema,
C: WireSchema,
D: WireSchema,
E: WireSchema,
F: WireSchema,
G: WireSchema,
H: WireSchema,
impl<A, B, C, D, E, F, G, H> WireSchema for (A, B, C, D, E, F, G, H)where
A: WireSchema,
B: WireSchema,
C: WireSchema,
D: WireSchema,
E: WireSchema,
F: WireSchema,
G: WireSchema,
H: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C, D, E, F, G> WireSchema for (A, B, C, D, E, F, G)where
A: WireSchema,
B: WireSchema,
C: WireSchema,
D: WireSchema,
E: WireSchema,
F: WireSchema,
G: WireSchema,
impl<A, B, C, D, E, F, G> WireSchema for (A, B, C, D, E, F, G)where
A: WireSchema,
B: WireSchema,
C: WireSchema,
D: WireSchema,
E: WireSchema,
F: WireSchema,
G: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C, D, E, F> WireSchema for (A, B, C, D, E, F)
impl<A, B, C, D, E, F> WireSchema for (A, B, C, D, E, F)
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C, D, E> WireSchema for (A, B, C, D, E)
impl<A, B, C, D, E> WireSchema for (A, B, C, D, E)
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C, D> WireSchema for (A, B, C, D)
impl<A, B, C, D> WireSchema for (A, B, C, D)
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B, C> WireSchema for (A, B, C)
impl<A, B, C> WireSchema for (A, B, C)
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A, B> WireSchema for (A, B)where
A: WireSchema,
B: WireSchema,
impl<A, B> WireSchema for (A, B)where
A: WireSchema,
B: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<A> WireSchema for (A,)where
A: WireSchema,
impl<A> WireSchema for (A,)where
A: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<K, V> WireSchema for BTreeMap<K, V>where
K: WireSchema,
V: WireSchema,
impl<K, V> WireSchema for BTreeMap<K, V>where
K: WireSchema,
V: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<K, V> WireSchema for HashMap<K, V>where
K: WireSchema,
V: WireSchema,
impl<K, V> WireSchema for HashMap<K, V>where
K: WireSchema,
V: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T, E> WireSchema for Result<T, E>where
T: WireSchema,
E: WireSchema,
impl<T, E> WireSchema for Result<T, E>where
T: WireSchema,
E: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for &Twhere
T: WireSchema + ?Sized,
impl<T> WireSchema for &Twhere
T: WireSchema + ?Sized,
const IS_UNIT: bool = T::IS_UNIT
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Arc<T>where
T: WireSchema + ?Sized,
impl<T> WireSchema for Arc<T>where
T: WireSchema + ?Sized,
const IS_UNIT: bool = T::IS_UNIT
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Bound<T>where
T: WireSchema,
impl<T> WireSchema for Bound<T>where
T: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Box<T>where
T: WireSchema + ?Sized,
impl<T> WireSchema for Box<T>where
T: WireSchema + ?Sized,
const IS_UNIT: bool = T::IS_UNIT
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for HashSet<T>where
T: WireSchema,
impl<T> WireSchema for HashSet<T>where
T: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Option<T>where
T: WireSchema,
impl<T> WireSchema for Option<T>where
T: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Rc<T>where
T: WireSchema + ?Sized,
impl<T> WireSchema for Rc<T>where
T: WireSchema + ?Sized,
const IS_UNIT: bool = T::IS_UNIT
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn wire_type_id() -> String
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Source§impl<T> WireSchema for Vec<T>where
T: WireSchema,
impl<T> WireSchema for Vec<T>where
T: WireSchema,
fn wire_type_id() -> String
fn contains_stream(seen: &mut HashSet<&'static str>) -> bool
fn append_schema(builder: &mut WireSchemaBuilder) -> i32
Implementors§
impl WireSchema for AccountId
impl WireSchema for AgentAllFilter
impl WireSchema for AgentAnyFilter
impl WireSchema for AgentConfigVarsFilter
impl WireSchema for AgentCreatedAtFilter
impl WireSchema for AgentEnvFilter
impl WireSchema for AgentId
impl WireSchema for AgentMetadata
impl WireSchema for AgentNameFilter
impl WireSchema for AgentPropertyFilter
impl WireSchema for AgentStatus
impl WireSchema for AgentStatusFilter
impl WireSchema for AgentVersionFilter
impl WireSchema for CardId
impl WireSchema for CardView
impl WireSchema for ComponentId
impl WireSchema for EnvironmentId
impl WireSchema for FilterComparator
impl WireSchema for ForkDetails
impl WireSchema for ForkResult
impl WireSchema for GuestPermissionCardHandle
impl WireSchema for GuestQuotaTokenHandle
impl WireSchema for GuestSecretHandle
impl WireSchema for KernelModule
impl WireSchema for PatternGrant
impl WireSchema for PermissionCard
impl WireSchema for PermissionError
impl WireSchema for PolymorphicPermissionCard
impl WireSchema for ProcessExitStatus
impl WireSchema for PromiseId
impl WireSchema for QuotaToken
impl WireSchema for SchemaFingerprintV1
Available on crate feature
guest only.