Skip to main content

Attribute

Struct Attribute 

Source
pub struct Attribute<'a> { /* private fields */ }
Expand description

One attribute of a name: what kind of thing it is, and the value.

Implementations§

Source§

impl<'a> Attribute<'a>

Source

pub fn kind(self) -> Oid<'a>

What kind of attribute this is.

Source

pub fn value(self) -> AttributeValue<'a>

The value, as encoded.

Source

pub fn text(self, execution: &Memory) -> Result<Option<OwnedString>>

The value as text for a person to read, where it is text at all.

For display. Never for deciding that two names are the same one: see Name::matches.

§Errors

Returns a located resource error if the execution or storage budget is spent.

Source

pub fn folds(self, execution: &Memory) -> Result<bool>

Whether this value takes part in the preparation the profile describes, or is compared only as the bytes it was written in.

A caller explaining why a name did not match needs the same answer this comparison uses, not a guess at it: a value can be excluded for its encoding, for a code point the type prohibits, or for failing the direction step, and only one of those is visible from the outside.

§Errors

Returns a located resource error if preparation cannot be financed.

Source

pub fn folds_in(self, parent: &Reader<'_, '_>) -> Result<bool>

Whether this value prepares under the current producing query’s limits.

Uses the same preparation as Self::folds, funding scans and scratch through parent.execution() instead of only its aggregate account. Deferred BER strings retain this attribute’s original offset and depth and use the supplied reader’s session, just as Name::ordered_in. A query over another source supplies its original-source reader rebound to the current operation; retained Name storage is neither copied nor charged again. Resource refusal is an error, never a byte-only answer.

Trait Implementations§

Source§

impl<'a> Clone for Attribute<'a>

Source§

fn clone(&self) -> Self

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 Attribute<'a>

Source§

impl<'a> Debug for Attribute<'a>

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for Attribute<'a>

§

impl<'a> RefUnwindSafe for Attribute<'a>

§

impl<'a> Send for Attribute<'a>

§

impl<'a> Sync for Attribute<'a>

§

impl<'a> Unpin for Attribute<'a>

§

impl<'a> UnsafeUnpin for Attribute<'a>

§

impl<'a> UnwindSafe for Attribute<'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 = !

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

fn try_from(value: U) -> Result<T, !>

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.