The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MarpaX::Languages::C::AST::Callback::Method - Code reference for the Simple callback generic framework.

VERSION

version 0.23

DESCRIPTION

This module is describing the code reference for the Simple Callback framework. The new method supports these items:

description

Any string that describes this event. This string is usually the event itself for convenience with the qw/auto/ condition.

extra_description

Any string that describes this event even more. Used only for logging in case the description is set to the event name for convenience with the qw/auto/ condition.

method

A reference to an array containing a CODE REFERENCE in the first index, then the CODE ARGUMENTS. Or the single string 'auto'. In case of a CODE reference, The method will be called as $CODE($self, $callback, $eventsp, @CODE_ARGUMENTS) where $self is a reference to the method object, $callback is a reference to the Callback package that triggered the call, $eventsp is a reference to an array containing the events sent to the Callback::exec() method, and @CODE_ARGUMENTS are the given arguments, . In case of the single string 'auto', the description attribute will be used as a source topic, and for every targeted topic associated to the method, the dereferenced array content of the description data will be pushed, replaced, or nothing depending on the method_void and method_mode attributes.

method_mode

Default is to push any eventual topic data the output of the method. This flag can have values 'push' (default) or 'replace'. When value is 'replace', topic data is replaced by the method output.

method_void

Setting this flag to a true value will disable any use of method output, leaving topic data as is.

option

A reference to a MarpaX::Languages::C::AST::Callback::Option object.

AUTHOR

Jean-Damien Durand <jeandamiendurand@free.fr>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by Jean-Damien Durand.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.