Struct mz_testdrive::format::avro::Schema
source · pub struct Schema {
pub(crate) named: Vec<NamedSchemaPiece>,
pub(crate) indices: BTreeMap<FullName, usize>,
pub top: SchemaPieceOrNamed,
}
Expand description
Represents any valid Avro schema More information about Avro schemas can be found in the Avro Specification
Fields§
§named: Vec<NamedSchemaPiece>
§indices: BTreeMap<FullName, usize>
§top: SchemaPieceOrNamed
Implementations§
source§impl Schema
impl Schema
pub fn top_node(&self) -> SchemaNode<'_>
pub fn top_node_or_named(&self) -> SchemaNodeOrNamed<'_>
pub fn lookup(&self, idx: usize) -> &NamedSchemaPiece
pub fn try_lookup_name(&self, name: &FullName) -> Option<&NamedSchemaPiece>
source§impl Schema
impl Schema
sourcepub fn parse(value: &Value) -> Result<Schema, Error>
pub fn parse(value: &Value) -> Result<Schema, Error>
Create a Schema
from a serde_json::Value
representing a JSON Avro
schema.
sourcepub fn canonical_form(&self) -> String
pub fn canonical_form(&self) -> String
Converts self
into its Parsing Canonical Form.
sourcepub fn fingerprint<D>(&self) -> SchemaFingerprintwhere
D: Digest,
pub fn fingerprint<D>(&self) -> SchemaFingerprintwhere D: Digest,
Generate fingerprint of Schema’s Parsing Canonical Form.
Trait Implementations§
source§impl<'a> From<&'a Schema> for SchemaKind
impl<'a> From<&'a Schema> for SchemaKind
source§fn from(schema: &'a Schema) -> SchemaKind
fn from(schema: &'a Schema) -> SchemaKind
Converts to this type from the input type.
source§impl PartialEq for Schema
impl PartialEq for Schema
source§impl Serialize for Schema
impl Serialize for Schema
source§fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>( &self, serializer: S ) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for Schema
Auto Trait Implementations§
impl RefUnwindSafe for Schema
impl Send for Schema
impl Sync for Schema
impl Unpin 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
source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for Twhere
T: Clone,
impl<T> PreferredContainer for Twhere T: Clone,
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.