# Struct proc_macro::Group[−][src]

    pub struct Group { /* fields omitted */ }

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

A delimited token stream.

A `Group` internally contains a `TokenStream` which is surrounded by `Delimiter`s.

## Methods

###

`impl Group`

[src]

####

`pub fn new(delimiter: Delimiter, stream: TokenStream) -> Group`

[src]

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

Creates a new `Group` with 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 the `set_span` method below.

####

`pub fn delimiter(&self) -> Delimiter`

[src]

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

Returns the delimiter of this `Group`

####

`pub fn stream(&self) -> TokenStream`

[src]

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

Returns the `TokenStream` of tokens that are delimited in this `Group`.

Note that the returned token stream does not include the delimiter returned above.

####

`pub fn span(&self) -> Span`

[src]

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

Returns the span for the delimiters of this token stream, spanning the entire `Group`.

####

`pub fn set_span(&mut self, span: Span)`

[src]

🔬 This is a nightly-only experimental API. (`proc_macro` #38356)

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 From<Group> for TokenTree`

[src]

####

`fn from(g: Group) -> TokenTree`

[src]

Performs the conversion.

###

`impl Clone for Group`

[src]

####

`fn clone(&self) -> Group`

[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 Debug for Group`

[src]

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

###

`impl !Send for Group`

[src]

###

`impl !Sync for Group`

[src]

###

`impl Display for Group`

[src]

Prints the group as a string that should be losslessly convertible back into the same group (modulo spans), except for possibly `TokenTree::Group`s with `Delimiter::None` delimiters.

####

`fn fmt(&self, f: &mut Formatter) -> Result`

[src]

Formats the value using the given formatter. Read more

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g. `str,u8` or `String,struct:Vec,test`)