Data::Object::Role::Proxyable
Proxyable Role for Perl 5
package Example; use Moo; with 'Data::Object::Role::Proxyable'; sub build_proxy { my ($self, $package, $method, @args) = @_; if ($method eq 'true') { return sub { return 1; } } if ($method eq 'false') { return sub { return 0; } } return undef; } package main; my $example = Example->new;
This package provides a wrapper around the AUTOLOAD routine which processes calls to routines which don't exist. Adding a build_proxy method to the consuming class acts as a hook into routine dispatching, which processes calls to routines which don't exist. The build_proxy routine is called as a method and receives $self, $package, $method, and any arguments passed to the method as a list of arguments, e.g. @args. The build_proxy method must return a routine (i.e. a callback) or the undefined value which results in a "method missing" error.
AUTOLOAD
build_proxy
$self
$package
$method
@args
Al Newkirk, awncorp@cpan.org
awncorp@cpan.org
Copyright (C) 2011-2019, Al Newkirk, et al.
This is free software; you can redistribute it and/or modify it under the terms of the The Apache License, Version 2.0, as elucidated in the "license file".
Wiki
Project
Initiatives
Milestones
Contributing
Issues
To install Data::Object::Role::Proxyable, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Data::Object::Role::Proxyable
CPAN shell
perl -MCPAN -e shell install Data::Object::Role::Proxyable
For more information on module installation, please visit the detailed CPAN module installation guide.