# [−][src]Trait rayon::iter::plumbing::ProducerCallback

    pub trait ProducerCallback<T> {
        type Output;
        fn callback<P>(self, producer: P) -> Self::Output
        where
            P: Producer<Item = T>;
    }

The `ProducerCallback` trait is a kind of generic closure, analogous to `FnOnce`. See the corresponding section in the plumbing README for more details.

## Associated Types

### `type Output`

The type of value returned by this callback. Analogous to `Output` from the `FnOnce` trait.

Loading content...

## Required methods

### `fn callback<P>(self, producer: P) -> Self::Output where
P: Producer<Item = T>,`

Invokes the callback with the given producer as argument. The key point of this trait is that this method is generic over `P`, and hence implementors must be defined for any producer.

Loading content...

## Implementors

Loading content...

# 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`)