NAME

Devel::OverloadInfo - introspect overloaded operators

VERSION

version 0.002

DESCRIPTION

Devel::OverloadInfo returns information about overloaded operators for a given class (or object), including where in the inheritance hierarchy the overloads are declared and where the code implementing it is.

FUNCTIONS

overload_info

my $info = overload_info($class_or_object);

Returns a hash reference with information about all the overloaded operators of the argument, which can be either a class name or a blessed object. The keys are the overloaded operators, as specified in %overload::ops (see "Overloadable Operations" in overload).

class

The name of the class in which the operator overloading was declared.

code

A reference to the function implementing the overloaded operator.

code_name

The name of the function implementing the overloaded operator, as returned by sub_fullname in Sub::Identify.

method_name (optional)

The name of the method implementing the overloaded operator, if the overloading was specified as a named method, e.g. use overload $op => 'method';.

code_class (optional)

The name of the class in which the method specified by method_name was found.

value (optional)

For the special fallback key, the value it was given in class.

AUTHOR

Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Dagfinn Ilmari Mannsåker.

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