Enum Id

Source
pub enum Id<I = IriBuf, B = BlankIdBuf> {
    Blank(B),
    Iri(I),
}
Expand description

RDF node identifier.

Either a blank node identifier or an IRI.

§Hash implementation

It is guaranteed that the Hash implementation of Id is transparent, meaning that the hash of Term::Blank(id) the same as id and the hash of Subject::Iri(iri) is the same as iri.

Variants§

§

Blank(B)

Blank node identifier.

§

Iri(I)

IRI.

Implementations§

Source§

impl<I, B> Id<I, B>

Source

pub fn is_blank(&self) -> bool

Source

pub fn is_iri(&self) -> bool

Source

pub fn as_blank(&self) -> Option<&B>

Source

pub fn as_iri(&self) -> Option<&I>

Source

pub fn try_into_blank(self) -> Result<B, I>

Source

pub fn into_blank(self) -> Option<B>

Source

pub fn try_into_iri(self) -> Result<I, B>

Source

pub fn into_iri(self) -> Option<I>

Source

pub fn as_term<L>(&self) -> Term<&Self, &L>

Converts this id reference into the term Term::Id(&id).

Source

pub fn into_term<L>(self) -> Term<Self, L>

Converts the id into the term Term::Id(id).

Source

pub fn as_str(&self) -> &str
where I: AsRef<str>, B: AsRef<str>,

Returns a borrowed string representation of the id.

Source

pub fn as_ref(&self) -> Id<&I, &B>

Converts an &Id<I, B> into an Id<&I, &B>.

Source§

impl<'a, I, B> Id<&'a I, &'a B>

Source

pub fn cloned(self) -> Id<I, B>
where I: Clone, B: Clone,

Maps an Id<&I, &B> into an Id<I, B> by cloning the contents of the id.

Source

pub fn copied(self) -> Id<I, B>
where I: Copy, B: Copy,

Maps an Id<&I, &B> into an Id<I, B> by copying the contents of the id.

Source§

impl Id

Source

pub fn as_lexical_id_ref(&self) -> LexicalIdRef<'_>

Turns this reference into an IdRef.

Source

pub fn as_lexical_subject_ref(&self) -> LexicalSubjectRef<'_>

Alias for as_id_ref.

Source

pub fn as_graph_label_ref(&self) -> LexicalGraphLabelRef<'_>

Alias for as_id_ref.

Source

pub fn inserted_into<V: VocabularyMut>( &self, vocabulary: &mut V, ) -> Id<V::Iri, V::BlankId>

Source

pub fn insert_into<V: VocabularyMut>( self, vocabulary: &mut V, ) -> Id<V::Iri, V::BlankId>

Source§

impl Id<&Iri, &BlankId>

Source

pub fn into_owned(self) -> Id

Trait Implementations§

Source§

impl<I, B> AsId for Id<I, B>

Source§

fn as_id(&self) -> Id<&I, &B>

Source§

impl<I, B, L> AsRdfTerm<I, B, L> for Id<I, B>

Source§

fn as_rdf_term(&self) -> Term<Id<&I, &B>, &L>

Returns this value as an RDF term.
Source§

impl<I: Clone, B: Clone> Clone for Id<I, B>

Source§

fn clone(&self) -> Id<I, B>

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<I: Debug, B: Debug> Debug for Id<I, B>

Source§

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

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

impl<I: Display, B: Display> Display for Id<I, B>

Source§

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

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

impl<V, I: EmbedIntoVocabulary<V>, B: EmbedIntoVocabulary<V>> EmbedIntoVocabulary<V> for Id<I, B>

Source§

type Embedded = Id<<I as EmbedIntoVocabulary<V>>::Embedded, <B as EmbedIntoVocabulary<V>>::Embedded>

Type of the value once embedded into the vocabulary.
Source§

fn embed_into_vocabulary(self, vocabulary: &mut V) -> Self::Embedded

Source§

impl<V, I: EmbeddedIntoVocabulary<V>, B: EmbeddedIntoVocabulary<V>> EmbeddedIntoVocabulary<V> for Id<I, B>

Source§

impl<V: IriVocabulary + BlankIdVocabulary> ExtractFromVocabulary<V> for Id<V::Iri, V::BlankId>

Source§

type Extracted = Id

Source§

fn extract_from_vocabulary(self, vocabulary: &V) -> Self::Extracted

Source§

impl<V: IriVocabulary + BlankIdVocabulary> ExtractedFromVocabulary<V> for Id<V::Iri, V::BlankId>

Source§

type Extracted = Id

Source§

fn extracted_from_vocabulary(&self, vocabulary: &V) -> Self::Extracted

Exports a value embedded into the vocabulary V. Read more
Source§

impl<I, B> FromBlankId for Id<I, B>

Source§

fn from_blank(b: Self::BlankId) -> Self

Builds a value from a blank node identifier.
Source§

impl<I, B> FromIri for Id<I, B>

Source§

fn from_iri(b: I) -> Self

Builds a value from an iri.
Source§

impl<I: Hash, B: Hash> Hash for Id<I, B>

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<I, B, T: IdInterpretationMut<I, B>> Interpret<T> for Id<I, B>

Source§

type Interpreted = <T as Interpretation>::Resource

Interpreted form.
Source§

fn interpret(self, interpretation: &mut T) -> Self::Interpreted

Interpret the given resource.
Source§

impl<I, B> IntoId for Id<I, B>

Source§

fn into_id(self) -> Self

Source§

impl<I, B> MaybeBlankId for Id<I, B>

Source§

type BlankId = B

Inner blank node identifier type.
Source§

impl<I, B> MaybeIri for Id<I, B>

Source§

type Iri = I

Inner iri type.
Source§

impl<I: Ord, B: Ord> Ord for Id<I, B>

Source§

fn cmp(&self, other: &Id<I, B>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl<I1: PartialEq<I2>, B1: PartialEq<B2>, I2, B2> PartialEq<Id<I2, B2>> for Id<I1, B1>

Source§

fn eq(&self, other: &Id<I2, B2>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

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

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<I1: PartialOrd<I2>, B1: PartialOrd<B2>, I2, B2> PartialOrd<Id<I2, B2>> for Id<I1, B1>

Source§

fn partial_cmp(&self, other: &Id<I2, B2>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl<I: Display, B: Display> RdfDisplay for Id<I, B>

Source§

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

Formats the value using the given formatter.
Source§

fn rdf_display(&self) -> RdfDisplayed<&Self>

Prepare the value to be formatted as an RDF syntax element.
Source§

impl<I, B> TryAsBlankId for Id<I, B>

Source§

fn try_as_blank(&self) -> Option<&Self::BlankId>

Returns a reference to the blank node identifier value, if any.
Source§

fn is_blank(&self) -> bool

Source§

impl<I, B> TryAsIri for Id<I, B>

Source§

fn try_as_iri(&self) -> Option<&I>

Returns a reference to the iri value, if any.
Source§

fn is_iri(&self) -> bool

Source§

impl<I, B> TryIntoBlankId for Id<I, B>

Source§

fn try_into_blank(self) -> Result<Self::BlankId, Self>

Source§

impl<I, B> TryIntoId for Id<I, B>

Source§

fn try_into_id(self) -> Result<Self, Self>

Source§

impl<I, B> TryIntoIri for Id<I, B>

Source§

fn try_into_iri(self) -> Result<I, Self>

Source§

impl<I: Copy, B: Copy> Copy for Id<I, B>

Source§

impl<I: Eq, B: Eq> Eq for Id<I, B>

Auto Trait Implementations§

§

impl<I, B> Freeze for Id<I, B>
where B: Freeze, I: Freeze,

§

impl<I, B> RefUnwindSafe for Id<I, B>

§

impl<I, B> Send for Id<I, B>
where B: Send, I: Send,

§

impl<I, B> Sync for Id<I, B>
where B: Sync, I: Sync,

§

impl<I, B> Unpin for Id<I, B>
where B: Unpin, I: Unpin,

§

impl<I, B> UnwindSafe for Id<I, B>
where B: UnwindSafe, I: UnwindSafe,

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<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T> TryAsId for T

Source§

fn try_as_id(&self) -> Option<Id<&Self::Iri, &Self::BlankId>>

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