pub enum DatumToken<B: Deref<Target = str>> {
String(DatumOffset, B),
Symbol(DatumOffset, B),
SpecialID(DatumOffset, B),
Integer(DatumOffset, i64),
Float(DatumOffset, f64),
ListStart(DatumOffset),
ListEnd(DatumOffset),
}Expand description
Datum token with integrated string. Notably, integer/float are stored as their values here to prevent unwritable values existing.
Variants§
String(DatumOffset, B)
String. Buffer contents are the unescaped string contents.
Symbol(DatumOffset, B)
Symbol. Buffer contents are the symbol.
SpecialID(DatumOffset, B)
Special ID. Buffer contents are the symbol (text after, but not including, ‘#’).
Integer(DatumOffset, i64)
Integer.
Float(DatumOffset, f64)
Float.
ListStart(DatumOffset)
ListEnd(DatumOffset)
Implementations§
Source§impl<B: Deref<Target = str>> DatumToken<B>
impl<B: Deref<Target = str>> DatumToken<B>
Sourcepub fn token_type(&self) -> DatumTokenType
pub fn token_type(&self) -> DatumTokenType
Return the token type of this token.
Sourcepub fn offset(&self) -> DatumOffset
pub fn offset(&self) -> DatumOffset
Return the offset of this token.
Trait Implementations§
Source§impl<B: Clone + Deref<Target = str>> Clone for DatumToken<B>
impl<B: Clone + Deref<Target = str>> Clone for DatumToken<B>
Source§fn clone(&self) -> DatumToken<B>
fn clone(&self) -> DatumToken<B>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<B: Deref<Target = str>> TryFrom<(DatumTokenType, u64, B)> for DatumToken<B>
impl<B: Deref<Target = str>> TryFrom<(DatumTokenType, u64, B)> for DatumToken<B>
Source§type Error = DatumError
type Error = DatumError
The type returned in the event of a conversion error.
Source§fn try_from(
value: (DatumTokenType, DatumOffset, B),
) -> Result<Self, Self::Error>
fn try_from( value: (DatumTokenType, DatumOffset, B), ) -> Result<Self, Self::Error>
Performs the conversion.
Source§impl<B: Default + Deref<Target = str>> TryFrom<DatumToken<B>> for DatumAtom<B>
impl<B: Default + Deref<Target = str>> TryFrom<DatumToken<B>> for DatumAtom<B>
Source§fn try_from(token: DatumToken<B>) -> DatumResult<DatumAtom<B>>
fn try_from(token: DatumToken<B>) -> DatumResult<DatumAtom<B>>
Tries to convert from a DatumToken. Due to the strings involved, this has to be done via ownership transfer.
Source§type Error = DatumError
type Error = DatumError
The type returned in the event of a conversion error.
impl<B: Copy + Deref<Target = str>> Copy for DatumToken<B>
impl<B: Deref<Target = str>> StructuralPartialEq for DatumToken<B>
Auto Trait Implementations§
impl<B> Freeze for DatumToken<B>where
B: Freeze,
impl<B> RefUnwindSafe for DatumToken<B>where
B: RefUnwindSafe,
impl<B> Send for DatumToken<B>where
B: Send,
impl<B> Sync for DatumToken<B>where
B: Sync,
impl<B> Unpin for DatumToken<B>where
B: Unpin,
impl<B> UnwindSafe for DatumToken<B>where
B: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more