Struct proc_macro::Punct
1.29.0 · source · [−]pub struct Punct(_);
Expand description
A Punct
is a single punctuation character such as +
, -
or #
.
Multi-character operators like +=
are represented as two instances of Punct
with different
forms of Spacing
returned.
Implementations
sourceimpl 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 multi-character operator (Joint
), or it’s followed by some other token or whitespace
(Alone
) so the operator has certainly ended.
Trait Implementations
sourceimpl Display for Punct
impl Display for Punct
Prints the punctuation character as a string that should be losslessly convertible back into the same character.
impl !Send for Punct
impl !Sync for Punct
Auto Trait Implementations
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more