Skip to main content

StructView

Struct StructView 

Source
pub struct StructView<'a>(/* private fields */);
Expand description

A struct value’s name and fields.

Implementations§

Source§

impl<'a> StructView<'a>

Source

pub fn type_name(self) -> &'a str

The qualified name of the declared type, such as rules.policy.PullRequest — the name Value::structure takes.

Source

pub fn field(self, name: &str) -> Option<&'a Value>

The field name, or None when the struct declares no such field.

Source

pub fn fields(self) -> impl Iterator<Item = (&'a str, &'a Value)>

The fields, in declaration order.

Source

pub fn len(self) -> usize

How many fields the struct declares.

Source

pub fn is_empty(self) -> bool

Whether the struct declares no fields at all.

Source

pub fn is_opaque(self) -> bool

Whether the declaration said export opaque struct (ADR 0014), which governs how the value renders and nothing else.

The fields are readable here whatever this answers, for the reason Value::fields gives: a host holding the value has already been handed it.

Trait Implementations§

Source§

impl<'a> Clone for StructView<'a>

Source§

fn clone(&self) -> StructView<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Copy for StructView<'a>

Source§

impl<'a> Debug for StructView<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> !RefUnwindSafe for StructView<'a>

§

impl<'a> !Send for StructView<'a>

§

impl<'a> !Sync for StructView<'a>

§

impl<'a> !UnwindSafe for StructView<'a>

§

impl<'a> Freeze for StructView<'a>

§

impl<'a> Unpin for StructView<'a>

§

impl<'a> UnsafeUnpin for StructView<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.