Adobe Systems Incorporated


Category : functors Component type: concept


A Generator is a kind of functors : an object that is called as if it were an ordinary C++ function. A Generator is called with no arguments.

Refinement of


Associated types

Result type The type returned when the Generator is called


F A type that is a model of Generator
Result The result type of F
f Object of type F


The range of a Generator is the set of all possible value that it may return.

Valid expressions

Name Expression Type requirements Return type
Function call f()   Result

Expression semantics

Name Expression Precondition Semantics Postcondition
Function call f()   Returns some value of type Result [1] The return value is in f's range.

Complexity guarantees



  • Result (*)()


[1] Two different invocations of f may return different results : a Generator may refer to local state, perform I/O, and so on. The expression f() is permitted to change f's state; f might, for example, represent a pseudo-random number generator.

See also

functors, UnaryFunction, BinaryFunction, AdaptableGenerator

Copyright © 2006-2007 Adobe Systems Incorporated.

Use of this website signifies your agreement to the Terms of Use and Online Privacy Policy.

Search powered by Google