Devel::Agent::Proxy - instance proxy layer
use Devel::Agent::Proxy; my $self=new SomeClass(...); my $proxy=new Devel::Agent::Proxy( proxy_class_name=>'SomeClass', proxied_object=>$self, );
Devel::Agent::Proxy
This class was created to act as an agent aware wrapper for classes that internals need to be kept of the radar of the agent debugger.
This section documents the constructor methods and class accessors. All constructor arguments are passed by thier name, all class accessors are prefixed with___. For Example wrap_result_methods becomes $self->___wrap_result_methods in an accessor context.
wrap_result_methods=>HashRef[CodeRef]
This is a hashref of code refs that can be used to post process the results of a proxied method.
proxy_class_name=>Str
This should be the name of the class we want the class_method and raw_method to appear as in the agent stack trace.
replace_name=>Str
This is autogenerated as needed, it will be set to $self->___proxy_class_name.'::' on first access.
proxied_object=>Object
This is the object to be proxied.
current_method=>Str
This represents the current method being proxied and is set dynamically at runtime.
in_can=>0
Used by the internals of this object for state.
This section documents the Methods created in this class.
This method is used by some plugin classes for Deve::Agent to handle frame alterations. Basicaly this method is used to re-write a frame in tracing to pevent this object from showing up as iteself and appear as the object it is proxying.
Overload of UNIVERSAL->can method
Overload of UNIVERSAL->isa("class")
Overload of UNIVERSAL->DOES($object|$class)
The guts of how this proxy class works, basically it auto loads methods to look like the object class it is proxying.
Handles wrapper logic for a given code reference.
Michael Shipper AKALINUX@CPAN.ORG
To install Devel::Agent, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Devel::Agent
CPAN shell
perl -MCPAN -e shell install Devel::Agent
For more information on module installation, please visit the detailed CPAN module installation guide.