| Home | Libraries | People | FAQ | More

#### Semantic Actions

Semantic Actions may be attached to any generator as follows:

    g[f]

where `f` is a function with the signatures:

    void f(Attrib&);
    void f(Attrib&, Context&);
    void f(Attrib&, Context&, bool&);

You can use Boost.Bind to bind member functions. For function objects, the allowed signatures are:

    void operator()(Attrib&, unused_type, unused_type) const;
    void operator()(Attrib&, Context&, unused_type) const;
    void operator()(Attrib&, Context&, bool&) const;

The `unused_type` is used in the signatures above to signify 'don't care'.

For more information see Semantic Actions.