pub struct TokenWithSpan {
pub token: Token,
pub span: Span,
}
Expand description
A Token with Span attached to it
This is used to track the location of a token in the input string
§Examples
// commas @ line 1, column 10
let tok1 = TokenWithSpan::new(
Token::Comma,
Span::new(Location::new(1, 10), Location::new(1, 11)),
);
assert_eq!(tok1, Token::Comma); // can compare the token
// commas @ line 2, column 20
let tok2 = TokenWithSpan::new(
Token::Comma,
Span::new(Location::new(2, 20), Location::new(2, 21)),
);
// same token but different locations are not equal
assert_ne!(tok1, tok2);
Fields§
§token: Token
§span: Span
Implementations§
Trait Implementations§
Source§impl Clone for TokenWithSpan
impl Clone for TokenWithSpan
Source§fn clone(&self) -> TokenWithSpan
fn clone(&self) -> TokenWithSpan
Returns a copy 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 Debug for TokenWithSpan
impl Debug for TokenWithSpan
Source§impl<'de> Deserialize<'de> for TokenWithSpan
impl<'de> Deserialize<'de> for TokenWithSpan
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for TokenWithSpan
impl Display for TokenWithSpan
Source§impl From<AttachedToken> for TokenWithSpan
impl From<AttachedToken> for TokenWithSpan
Source§fn from(value: AttachedToken) -> Self
fn from(value: AttachedToken) -> Self
Converts to this type from the input type.
Source§impl From<TokenWithSpan> for AttachedToken
impl From<TokenWithSpan> for AttachedToken
Source§fn from(value: TokenWithSpan) -> Self
fn from(value: TokenWithSpan) -> Self
Converts to this type from the input type.
Source§impl Hash for TokenWithSpan
impl Hash for TokenWithSpan
Source§impl Ord for TokenWithSpan
impl Ord for TokenWithSpan
Source§fn cmp(&self, other: &TokenWithSpan) -> Ordering
fn cmp(&self, other: &TokenWithSpan) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq<Token> for TokenWithSpan
impl PartialEq<Token> for TokenWithSpan
Source§impl PartialEq<TokenWithSpan> for Token
impl PartialEq<TokenWithSpan> for Token
Source§impl PartialEq for TokenWithSpan
impl PartialEq for TokenWithSpan
Source§impl PartialOrd for TokenWithSpan
impl PartialOrd for TokenWithSpan
Source§impl Serialize for TokenWithSpan
impl Serialize for TokenWithSpan
Source§impl Visit for TokenWithSpan
impl Visit for TokenWithSpan
Source§impl VisitMut for TokenWithSpan
impl VisitMut for TokenWithSpan
fn visit<V: VisitorMut>(&mut self, visitor: &mut V) -> ControlFlow<V::Break>
impl Eq for TokenWithSpan
impl StructuralPartialEq for TokenWithSpan
Auto Trait Implementations§
impl Freeze for TokenWithSpan
impl RefUnwindSafe for TokenWithSpan
impl Send for TokenWithSpan
impl Sync for TokenWithSpan
impl Unpin for TokenWithSpan
impl UnwindSafe for TokenWithSpan
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