pub struct ComplexLayout<'s> { /* private fields */ }Expand description
A complex instance’s partial records resolved against a schema.
Returned by SchemaGraph::resolve_complex. Parts are kept in the order
they were given, one per input name, so parts()[i] always describes the
i-th partial record of the instance.
Implementations§
Source§impl<'s> ComplexLayout<'s>
impl<'s> ComplexLayout<'s>
Sourcepub fn parts(&self) -> &[ComplexPart<'s>]
pub fn parts(&self) -> &[ComplexPart<'s>]
One entry per partial record, in input order.
Sourcepub fn types(&self) -> &[&'s str]
pub fn types(&self) -> &[&'s str]
Every entity type the instance is: each known part plus all of its supertypes, once each, sorted by declared name.
For a conforming instance this is exactly the set of parts. When a
supertype is missing it still appears here, so types always
describes the whole instance; the omission is reported as
ComplexIssue::MissingSupertype.
Sourcepub fn issues(&self) -> &[ComplexIssue]
pub fn issues(&self) -> &[ComplexIssue]
Every way the instance departs from §12.2.5.3, in a stable order: per-part issues by index, then missing supertypes by name.
Trait Implementations§
Source§impl<'s> Clone for ComplexLayout<'s>
impl<'s> Clone for ComplexLayout<'s>
Auto Trait Implementations§
impl<'s> Freeze for ComplexLayout<'s>
impl<'s> RefUnwindSafe for ComplexLayout<'s>
impl<'s> Send for ComplexLayout<'s>
impl<'s> Sync for ComplexLayout<'s>
impl<'s> Unpin for ComplexLayout<'s>
impl<'s> UnsafeUnpin for ComplexLayout<'s>
impl<'s> UnwindSafe for ComplexLayout<'s>
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