pub trait Token:
PartialEq
+ Clone
+ Display
+ Debug
+ 'static {
type Char: CharType;
// Required methods
fn base(&self) -> &BaseToken<Self::Char>;
fn new(
base: BaseToken<Self::Char>,
sourceref: Option<(Ptr<String>, (usize, usize), (usize, usize))>,
) -> Self;
fn with_ref(&self, token: &Ptr<Self>, cmd: &Ptr<Command<Self>>) -> Self;
fn sourceref_trace(&self) -> Option<String>;
fn from_str(s: String) -> Vec<Self>;
// Provided method
fn catcode(&self) -> CategoryCode { ... }
}Required Associated Types§
Required Methods§
Sourcefn new(
base: BaseToken<Self::Char>,
sourceref: Option<(Ptr<String>, (usize, usize), (usize, usize))>,
) -> Self
fn new( base: BaseToken<Self::Char>, sourceref: Option<(Ptr<String>, (usize, usize), (usize, usize))>, ) -> Self
Sourcefn with_ref(&self, token: &Ptr<Self>, cmd: &Ptr<Command<Self>>) -> Self
fn with_ref(&self, token: &Ptr<Self>, cmd: &Ptr<Command<Self>>) -> Self
Clone this Token with a new SourceReference of type SourceReference::Expansion
(if the Token is a TokenWithSourceref).
fn sourceref_trace(&self) -> Option<String>
Provided Methods§
Sourcefn catcode(&self) -> CategoryCode
fn catcode(&self) -> CategoryCode
The CategoryCode of the Token
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.