Struct Group
pub struct Group(pub(crate) Group<TokenStream, Span>);
A delimited token stream.
A Group internally contains a TokenStream which is surrounded by Delimiters.
Fields
0: Group<TokenStream, Span>
Implementations
impl Group
fn new(delimiter: Delimiter, stream: TokenStream) -> GroupCreates a new
Groupwith the given delimiter and token stream.This constructor will set the span for this group to
Span::call_site(). To change the span you can use theset_spanmethod below.fn delimiter(&self) -> DelimiterReturns the delimiter of this
Groupfn stream(&self) -> TokenStreamReturns the
TokenStreamof tokens that are delimited in thisGroup.Note that the returned token stream does not include the delimiter returned above.
fn span(&self) -> SpanReturns the span for the delimiters of this token stream, spanning the entire
Group.pub fn span(&self) -> Span { ^^^^^^^fn span_open(&self) -> SpanReturns the span pointing to the opening delimiter of this group.
pub fn span_open(&self) -> Span { ^fn span_close(&self) -> SpanReturns the span pointing to the closing delimiter of this group.
pub fn span_close(&self) -> Span { ^fn set_span(&mut self, span: Span)Configures the span for this
Group's delimiters, but not its internal tokens.This method will not set the span of all the internal tokens spanned by this group, but rather it will only set the span of the delimiter tokens at the level of the
Group.
Trait Implementations
impl !Send for Group
impl !Sync for Group
impl Clone for Group
fn clone(&self) -> Self
impl Debug for Group
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Display for Group
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl ToTokens for Group
fn to_tokens(&self, tokens: &mut TokenStream)
Auto Trait Implementations
impl Freeze for Group
impl RefUnwindSafe for Group
impl Unpin for Group
impl UnsafeUnpin for Group
impl UnwindSafe for Group
Blanket Implementations
impl<T> Any for Group
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Group
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Group
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Group
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for Group
fn from(t: T) -> TReturns the argument unchanged.
impl<T> RepToTokensExt for Group
where
T: ToTokens + ?Sized,
impl<T> SizeHint for Group
where
T: ?Sized,
fn lower_bound(&self) -> usizefn upper_bound(&self) -> Option<usize>
impl<T> SizedTypeProperties for Group
impl<T> ToOwned for Group
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T> ToString for Group
where
T: Display + ?Sized,
fn to_string(&self) -> String
impl<T, U> Into<U> for Group
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for Group
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Group
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>