Skip to main content

EnterpriseElement

Struct EnterpriseElement 

Source
pub struct EnterpriseElement {
    pub enterprise_number: u32,
    pub id: u16,
    pub name: Option<String>,
    pub data_type: DataType,
    pub semantics: Option<DataTypeSemantics>,
    pub units: Option<u16>,
    pub range_begin: Option<u64>,
    pub range_end: Option<u64>,
    pub description: Option<String>,
    pub source: ElementSource,
}
Expand description

Type information of an enterprise-specific Information Element (RFC 5610 Section 3)

Fields§

§enterprise_number: u32

Private Enterprise Number (privateEnterpriseNumber, 346)

§id: u16

Information Element identifier (informationElementId, 303)

§name: Option<String>

Name (informationElementName, 341)

§data_type: DataType

Abstract data type (informationElementDataType, 339)

§semantics: Option<DataTypeSemantics>

Data type semantics (informationElementSemantics, 344)

§units: Option<u16>

Units, as a value of the IANA “IPFIX Information Element Units” registry (informationElementUnits, 345)

§range_begin: Option<u64>

Inclusive low end of the range of acceptable values (informationElementRangeBegin, 342)

§range_end: Option<u64>

Inclusive high end of the range of acceptable values (informationElementRangeEnd, 343)

§description: Option<String>

Human-readable description (informationElementDescription, 340)

§source: ElementSource

Where the definition comes from

Implementations§

Source§

impl EnterpriseElement

Source

pub fn new( enterprise_number: u32, id: u16, name: &str, data_type: DataType, ) -> Self

A caller-registered definition with a name and a data type

Source

pub fn with_semantics(self, semantics: DataTypeSemantics) -> Self

Set the data type semantics

Source

pub fn has_valid_semantics(&self) -> bool

Whether the data type and semantics combination is valid (RFC 5610 Section 3.10). Invalid combinations MUST be ignored.

RFC 5610 predates the structured data types (RFC 6313) and unsigned256 (RFC 9740): lists accept the list semantics, and unsigned256 follows the other unsigned types.

Trait Implementations§

Source§

impl Clone for EnterpriseElement

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 Debug for EnterpriseElement

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Eq for EnterpriseElement

Source§

impl Hash for EnterpriseElement

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for EnterpriseElement

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for EnterpriseElement

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, 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.