pub struct Punct { /* private fields */ }Expand description
A Punct is a single punctuation character like +, - or #.
Multicharacter operators like += are represented as two instances of
Punct with different forms of Spacing returned.
Implementations§
Source§impl Punct
impl Punct
Sourcepub fn new(ch: char, spacing: Spacing) -> Punct
pub fn new(ch: char, spacing: Spacing) -> Punct
Creates a new Punct from the given character and spacing.
The ch argument must be a valid punctuation character permitted by the
language, otherwise the function will panic.
The returned Punct will have the default span of Span::call_site()
which can be further configured with the set_span method below.
Sourcepub fn spacing(&self) -> Spacing
pub fn spacing(&self) -> Spacing
Returns the spacing of this punctuation character, indicating whether
it’s immediately followed by another Punct in the token stream, so
they can potentially be combined into a multicharacter operator
(Joint), or it’s followed by some other token or whitespace (Alone)
so the operator has certainly ended.
Trait Implementations§
Source§impl Display for Punct
Prints the punctuation character as a string that should be losslessly
convertible back into the same character.
impl Display for Punct
Prints the punctuation character as a string that should be losslessly convertible back into the same character.
Source§impl ToTokens for Punct
impl ToTokens for Punct
Source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Source§fn into_token_iter(self) -> TokenIter ⓘwhere
Self: Sized,
fn into_token_iter(self) -> TokenIter ⓘwhere
Self: Sized,
self into a TokenIter object.Source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
&self into a TokenStream object.Source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
self into a TokenStream object.Source§impl ToTokens for Punct
impl ToTokens for Punct
Source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
Source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
Auto Trait Implementations§
impl Freeze for Punct
impl RefUnwindSafe for Punct
impl !Send for Punct
impl !Sync for Punct
impl Unpin for Punct
impl UnwindSafe for Punct
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DynamicTokens for T
impl<T> DynamicTokens for T
Source§impl<T> Parse for Twhere
T: Parser,
impl<T> Parse for Twhere
T: Parser,
Source§fn parse(tokens: &mut TokenIter) -> Result<Self, Error>
fn parse(tokens: &mut TokenIter) -> Result<Self, Error>
parser() within a
transaction. Commits changes on success and returns the parsed value. Read more