Skip to main content

ObjectData

Struct ObjectData 

Source
pub struct ObjectData { /* private fields */ }
Expand description

An OBJECT-TYPE definition from an SMIv1 or SMIv2 module.

Contains both the raw definition fields and effective (inherited) values computed during resolution. Access through ObjectData methods or the Object handle type.

Implementations§

Source§

impl ObjectData

Public accessor methods for ObjectData.

Source

pub fn name(&self) -> &str

Return the object name.

Source

pub fn span(&self) -> Span

Return the source span.

Source

pub fn node(&self) -> Option<NodeId>

Return the OID tree node id, if resolved.

Source

pub fn module(&self) -> Option<ModuleId>

Return the defining module id.

Source

pub fn status(&self) -> Status

Return the status (current, deprecated, obsolete).

Source

pub fn description(&self) -> &str

Return the DESCRIPTION clause text.

Source

pub fn reference(&self) -> &str

Return the REFERENCE clause text.

Source

pub fn oid_refs(&self) -> &[OidRef]

Return symbolic OID references from the definition.

Source

pub fn type_id(&self) -> Option<TypeId>

Return the resolved type id, if any.

Source

pub fn access(&self) -> Access

Return the access level.

Source

pub fn units(&self) -> &str

Return the UNITS clause text.

Source

pub fn default_value(&self) -> Option<&DefVal>

Return the DEFVAL clause, if present.

Source

pub fn augments(&self) -> Option<ObjectId>

Return the AUGMENTS target row id, if this row augments another.

Source

pub fn augmented_by(&self) -> &[ObjectId]

Return rows that augment this row.

Source

pub fn kind(&self, tree: &OidTree) -> Kind

Return the node Kind by looking up the OidTree.

Returns Kind::Unknown if the object’s OID was not resolved. Callers using the Object handle do not need this method; use Object::kind instead.

Source

pub fn effective_display_hint(&self) -> &str

Return the effective display hint, inherited from the resolved type chain.

This is pre-computed during resolution, so it does not require walking the type chain at query time.

Source

pub fn effective_sizes(&self) -> &[Range]

Return the effective SIZE constraints, inherited from the resolved type chain.

Source

pub fn effective_ranges(&self) -> &[Range]

Return the effective range constraints, inherited from the resolved type chain.

Source

pub fn effective_enums(&self) -> &[NamedValue]

Return the effective enumeration values, inherited from the resolved type chain.

Source

pub fn effective_bits(&self) -> &[NamedValue]

Return the effective BITS definitions, inherited from the resolved type chain.

Source

pub fn sequence_type_name(&self) -> &str

Return the SEQUENCE type name from the table definition.

Source

pub fn index(&self) -> &[IndexEntry]

Return the INDEX clause entries.

Source

pub fn syntax_span(&self) -> Span

Return the source span of the SYNTAX clause.

Source

pub fn access_span(&self) -> Span

Return the source span of the ACCESS/MAX-ACCESS clause.

Source

pub fn units_span(&self) -> Span

Return the source span of the UNITS clause.

Source

pub fn augments_span(&self) -> Span

Return the source span of the AUGMENTS clause.

Source

pub fn default_value_span(&self) -> Span

Return the source span of the DEFVAL clause.

Source

pub fn enum_by_label(&self, label: &str) -> Option<&NamedValue>

Look up an enumeration value by label name.

Source

pub fn bit_by_label(&self, label: &str) -> Option<&NamedValue>

Look up a BITS value by label name.

Trait Implementations§

Source§

impl Clone for ObjectData

Source§

fn clone(&self) -> ObjectData

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for ObjectData

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more