Struct proc_macro2::Punct
[−]
[src]
pub struct Punct { /* fields omitted */ }
An Punct
is an single punctuation character like +
, -
or #
.
Multicharacter operators like +=
are represented as two instances of
Punct
with different forms of Spacing
returned.
Methods
impl Punct
[src]
pub fn new(op: char, spacing: Spacing) -> Punct
[src]
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.
pub fn as_char(&self) -> char
[src]
Returns the value of this punctuation character as char
.
pub fn spacing(&self) -> Spacing
[src]
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.
pub fn span(&self) -> Span
[src]
Returns the span for this punctuation character.
pub fn set_span(&mut self, span: Span)
[src]
Configure the span for this punctuation character.
Trait Implementations
impl From<Punct> for TokenTree
[src]
impl Clone for Punct
[src]
fn clone(&self) -> Punct
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Display for Punct
[src]
Prints the punctuation character as a string that should be losslessly convertible back into the same character.
fn fmt(&self, f: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more