logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Aspect::Point::Functions - Allow point context methods to be called as functions

Authors

       Adam Kennedy <adamk@cpan.org>

Description

       In the AspectJ toolkit for Java which Aspect is inspired by, the join point context information is
       retrieved through certain keywords.

       In Aspect this initially proved too difficult to achieve without heavy source code rewriting, and so an
       alternative approach was taken using a topic object and methods.

       This experimental package attempts to implement the original function/keyword style of call.

       It is considered unsupported at this time.

Name

       Aspect::Point::Functions - Allow point context methods to be called as functions

Synopsis

         use Aspect::Point::Functions;

         # This code is equivalent to the SYNOPSIS for Aspect::Point
         my $advice_code = sub {
             print type;           # The advice type ('before')
             print pointcut;       # The matching pointcut ($pointcut)
             print enclosing;      # Access cflow pointcut advice context
             print sub_name;       # The full package_name::sub_name
             print package_name;   # The package name ('Person')
             print short_name;     # The sub name (a get or set method)
             print self;           # 1st parameter to the matching sub
             print (args)[1];      # 2nd parameter to the matching sub
             original->( x => 3 ); # Call matched sub independently
             return_value(4)       # Set the return value
         };

See Also