NAME
MOP4Import::Opts - Object to encapsulate caller() record
SYNOPSIS
# To import the type 'Opts' and m4i api functions.
use MOP4Import::Opts;
# To create an instance of MOP4Import::Opts.
sub import {
...
my Opts $opts = m4i_opts([caller]);
...
}
# To extract MOP4Import::Opts safely from pragma args.
sub declare_foo {
(my $myPack, my Opts $opts, my (@args)) = m4i_args(@_);
...
}
DESCRIPTION
This hash object encapsulates caller() info and other parameters for MOP4Import::Declare family.
ATTRIBUTES
- callpack
-
scalar caller() of import in usual case.
- destpkg
-
Where to export. Always defined.
- objpkg
-
What to define. Optional.
- basepkg
-
What to inherit. Optional.
- extending
-
Used in MOP4Import::Types::Extend and MOP4Import::Declare::Type
- caller
-
Original caller() info. This may be empty for faked m4i_opts().
- filename
- line
FUNCTIONS
m4i_args
This function converts $_[1]
by m4i_opts and returns whole @_
.
(my $myPack, my Opts $opts, my (@args)) = m4i_args(@_);
m4i_opts
my Opts $opts = m4i_opts([caller]);
my Opts $opts = m4i_opts(scalar caller); # string is ok too.
METHODS
as_string
$opts->as_string;
"$opts"; # Same as above.
AUTHOR
Kobayashi, Hiroaki <hkoba@cpan.org>
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.