pub struct Punct(pub(crate) Punct<Span>);
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.
Tuple Fields§
§0: Punct<Span>
Implementations§
Source§impl Punct
impl Punct
1.29.0 · 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.
1.29.0 · Sourcepub fn as_char(&self) -> char
pub fn as_char(&self) -> char
Returns the value of this punctuation character as char
.
Trait Implementations§
1.29.0 · 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)
proc_macro_totokens
#130977)Source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
proc_macro_totokens
#130977)Source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
proc_macro_totokens
#130977)impl !Send for Punct
impl !Sync for Punct
Auto Trait Implementations§
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,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 8 bytes