pub struct Object { /* private fields */ }Expand description
A schema object, a free object literal, or a named tuple — all three
decode to the same by-name field-access shape. type_name is Some
only for a real schema type (including the concrete type of a
polymorphic interface query result) or a registered named tuple;
None for a free object (select { a := 1 }) or an unregistered
structural named tuple.
Implementations§
Source§impl Object
impl Object
pub fn type_name(&self) -> Option<&str>
Sourcepub fn fields(&self) -> impl Iterator<Item = (&str, &Value)>
pub fn fields(&self) -> impl Iterator<Item = (&str, &Value)>
Every field, the implicit id included — what a caller decoding into
their own type reads, and what makes o.id work on a shape that only
named other pointers.
Sourcepub fn json_fields(&self) -> impl Iterator<Item = (&str, &Value)>
pub fn json_fields(&self) -> impl Iterator<Item = (&str, &Value)>
The fields JSON output carries — the same, less an id nobody asked
for. A rendered document holds exactly what the shape named.
pub fn get(&self, name: &str) -> Option<&Value>
pub fn len(&self) -> usize
pub fn is_empty(&self) -> bool
Trait Implementations§
impl StructuralPartialEq for Object
Auto Trait Implementations§
impl Freeze for Object
impl RefUnwindSafe for Object
impl Send for Object
impl Sync for Object
impl Unpin for Object
impl UnsafeUnpin for Object
impl UnwindSafe for Object
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.