SGI Logo

Adaptable Generator

Category: functors Component type: concept


An Adaptable Generator is a Generator with a nested typedef that defines its result type. [1] This nested typedef makes it possible to use function object adaptors.

Refinement of


Associated types

Result type F::result_type The type returned when the Generator is called


F A type that is a model of Adaptable Generator


Valid expressions

None, except for those defined by Generator

Expression semantics

Complexity guarantees



The STL does not include any types that are models of Adaptable Generator. An example of a user-defined Adaptable Generator is as follows.
struct counter
  typedef int result_type;

  counter() : n(0) {}
  result_type operator()() { return n++; }

  result_type n;


[1] Note the implication of this: a function pointer T (*f)() is a Generator, but not an Adaptable Generator: the expression f::result_type is nonsensical.

See also

Generator, Adaptable Unary Function, Adaptable Binary Function

STL Main Page

Contact Us | Site Map | Trademarks | Privacy | Using this site means you accept its Terms of Use
Copyright © 2009 - 2014 Silicon Graphics International. All rights reserved.