view release on metacpan or search on metacpan
lib/Data/Object/ClassHas.pm view on Meta::CPAN
no warnings 'redefine';
*{"${target}::has"} = _generate_has([$class, $target], $has);
return;
}
sub _generate_has {
my ($info, $orig) = @_;
return sub { @_ = _formulate_opts($info, @_); goto $orig; };
}
sub _formulate_opts {
my ($info, $name, %opts) = @_;
# name-only support
%opts = (is => 'ro', isa => 'Any') unless %opts;
%opts = (%opts, _formulate_new($info, $name, %opts)) if $opts{new};
%opts = (%opts, _formulate_bld($info, $name, %opts)) if $opts{bld};
%opts = (%opts, _formulate_clr($info, $name, %opts)) if $opts{clr};
%opts = (%opts, _formulate_crc($info, $name, %opts)) if $opts{crc};
%opts = (%opts, _formulate_def($info, $name, %opts)) if $opts{def};
%opts = (%opts, _formulate_hnd($info, $name, %opts)) if $opts{hnd};
%opts = (%opts, _formulate_isa($info, $name, %opts)) if $opts{isa};
%opts = (%opts, _formulate_lzy($info, $name, %opts)) if $opts{lzy};
%opts = (%opts, _formulate_opt($info, $name, %opts)) if $opts{opt};
%opts = (%opts, _formulate_pre($info, $name, %opts)) if $opts{pre};
%opts = (%opts, _formulate_rdr($info, $name, %opts)) if $opts{rdr};
%opts = (%opts, _formulate_req($info, $name, %opts)) if $opts{req};
%opts = (%opts, _formulate_tgr($info, $name, %opts)) if $opts{tgr};
%opts = (%opts, _formulate_use($info, $name, %opts)) if $opts{use};
%opts = (%opts, _formulate_wkr($info, $name, %opts)) if $opts{wkr};
%opts = (%opts, _formulate_wrt($info, $name, %opts)) if $opts{wrt};
$name = "+$name" if $opts{mod} || $opts{modify};
return ($name, %opts);
}
sub _formulate_new {
my ($info, $name, %opts) = @_;
if (delete $opts{new}) {
$opts{builder} = "new_${name}";
$opts{lazy} = 1;
}
return (%opts);
}
sub _formulate_bld {
my ($info, $name, %opts) = @_;
$opts{builder} = delete $opts{bld};
return (%opts);
}
sub _formulate_clr {
my ($info, $name, %opts) = @_;
$opts{clearer} = delete $opts{clr};
return (%opts);
}
sub _formulate_crc {
my ($info, $name, %opts) = @_;
$opts{coerce} = delete $opts{crc};
return (%opts);
}
sub _formulate_def {
my ($info, $name, %opts) = @_;
$opts{default} = delete $opts{def};
return (%opts);
}
sub _formulate_hnd {
my ($info, $name, %opts) = @_;
$opts{handles} = delete $opts{hnd};
return (%opts);
}
sub _formulate_isa {
my ($info, $name, %opts) = @_;
return (%opts) if ref($opts{isa});
$opts{isa} = Data::Object::Utility::Reify($info->[1], $opts{isa});
return (%opts);
}
sub _formulate_lzy {
my ($info, $name, %opts) = @_;
$opts{lazy} = delete $opts{lzy};
return (%opts);
}
sub _formulate_opt {
my ($info, $name, %opts) = @_;
delete $opts{opt};
$opts{required} = 0;
return (%opts);
}
sub _formulate_pre {
my ($info, $name, %opts) = @_;
$opts{predicate} = delete $opts{pre};
return (%opts);
}
sub _formulate_rdr {
my ($info, $name, %opts) = @_;
$opts{reader} = delete $opts{rdr};
return (%opts);
}
sub _formulate_req {
my ($info, $name, %opts) = @_;
delete $opts{req};
$opts{required} = 1;
return (%opts);
}
sub _formulate_tgr {
my ($info, $name, %opts) = @_;
$opts{trigger} = delete $opts{tgr};
return (%opts);
}
sub _formulate_use {
my ($info, $name, %opts) = @_;
if (my $use = delete $opts{use}) {
$opts{builder} = _formulate_use_builder($info, $name, @$use);
$opts{lazy} = 1;
}
return (%opts);
}
sub _formulate_use_builder {
my ($info, $name, $sub, @args) = @_;
return sub {
my ($self) = @_;
@_ = ($self, @args);
my $point = $self->can($sub) or do {
require Carp;
my $class = $info->[1];
Carp::croak("has '$name' cannot 'use' method '$sub' via package '$class'");
};
goto $point;
}
}
sub _formulate_wkr {
my ($info, $name, %opts) = @_;
$opts{weak_ref} = delete $opts{wkr};
return (%opts);
}
sub _formulate_wrt {
my ($info, $name, %opts) = @_;
$opts{writer} = delete $opts{wrt};
return (%opts);
}
# METHODS
1;
lib/Data/Object/RoleHas.pm view on Meta::CPAN
no warnings 'redefine';
*{"${target}::has"} = _generate_has([$class, $target], $has);
return;
}
sub _generate_has {
my ($info, $orig) = @_;
return sub { @_ = _formulate_opts($info, @_); goto $orig; };
}
sub _formulate_opts {
my ($info, $name, %opts) = @_;
# name-only support
%opts = (is => 'ro', isa => 'Any') unless %opts;
%opts = (%opts, _formulate_new($info, $name, %opts)) if $opts{new};
%opts = (%opts, _formulate_bld($info, $name, %opts)) if $opts{bld};
%opts = (%opts, _formulate_clr($info, $name, %opts)) if $opts{clr};
%opts = (%opts, _formulate_crc($info, $name, %opts)) if $opts{crc};
%opts = (%opts, _formulate_def($info, $name, %opts)) if $opts{def};
%opts = (%opts, _formulate_hld($info, $name, %opts)) if $opts{hld};
%opts = (%opts, _formulate_isa($info, $name, %opts)) if $opts{isa};
%opts = (%opts, _formulate_lzy($info, $name, %opts)) if $opts{lzy};
%opts = (%opts, _formulate_opt($info, $name, %opts)) if $opts{opt};
%opts = (%opts, _formulate_pre($info, $name, %opts)) if $opts{pre};
%opts = (%opts, _formulate_rdr($info, $name, %opts)) if $opts{rdr};
%opts = (%opts, _formulate_req($info, $name, %opts)) if $opts{req};
%opts = (%opts, _formulate_tgr($info, $name, %opts)) if $opts{tgr};
%opts = (%opts, _formulate_use($info, $name, %opts)) if $opts{use};
%opts = (%opts, _formulate_wkr($info, $name, %opts)) if $opts{wkr};
%opts = (%opts, _formulate_wrt($info, $name, %opts)) if $opts{wrt};
$name = "+$name" if $opts{mod} || $opts{modify};
return ($name, %opts);
}
sub _formulate_new {
my ($info, $name, %opts) = @_;
if (delete $opts{new}) {
$opts{builder} = "new_${name}";
$opts{lazy} = 1;
}
return (%opts);
}
sub _formulate_bld {
my ($info, $name, %opts) = @_;
$opts{builder} = delete $opts{bld};
return (%opts);
}
sub _formulate_clr {
my ($info, $name, %opts) = @_;
$opts{clearer} = delete $opts{clr};
return (%opts);
}
sub _formulate_crc {
my ($info, $name, %opts) = @_;
$opts{coerce} = delete $opts{crc};
return (%opts);
}
sub _formulate_def {
my ($info, $name, %opts) = @_;
$opts{default} = delete $opts{def};
return (%opts);
}
sub _formulate_hld {
my ($info, $name, %opts) = @_;
$opts{handles} = delete $opts{hld};
return (%opts);
}
sub _formulate_isa {
my ($info, $name, %opts) = @_;
return (%opts) if ref($opts{isa});
$opts{isa} = Data::Object::Utility::Reify($info->[1], $opts{isa});
return (%opts);
}
sub _formulate_lzy {
my ($info, $name, %opts) = @_;
$opts{lazy} = delete $opts{lzy};
return (%opts);
}
sub _formulate_opt {
my ($info, $name, %opts) = @_;
delete $opts{opt};
$opts{required} = 0;
return (%opts);
}
sub _formulate_pre {
my ($info, $name, %opts) = @_;
$opts{predicate} = delete $opts{pre};
return (%opts);
}
sub _formulate_rdr {
my ($info, $name, %opts) = @_;
$opts{reader} = delete $opts{rdr};
return (%opts);
}
sub _formulate_req {
my ($info, $name, %opts) = @_;
delete $opts{req};
$opts{required} = 1;
return (%opts);
}
sub _formulate_tgr {
my ($info, $name, %opts) = @_;
$opts{trigger} = delete $opts{tgr};
return (%opts);
}
sub _formulate_use {
my ($info, $name, %opts) = @_;
if (my $use = delete $opts{use}) {
$opts{builder} = _formulate_use_builder($info, $name, @$use);
$opts{lazy} = 1;
}
return (%opts);
}
sub _formulate_use_builder {
my ($info, $name, $sub, @args) = @_;
return sub {
my ($self) = @_;
@_ = ($self, @args);
my $point = $self->can($sub) or do {
require Carp;
my $class = $info->[1];
Carp::croak("has '$name' cannot 'use' method '$sub' via package '$class'");
};
goto $point;
}
}
sub _formulate_wkr {
my ($info, $name, %opts) = @_;
$opts{weak_ref} = delete $opts{wkr};
return (%opts);
}
sub _formulate_wrt {
my ($info, $name, %opts) = @_;
$opts{writer} = delete $opts{wrt};
return (%opts);
}
1;
=encoding utf8
t/0.90/can/Data_Object_ClassHas__formulate_bld.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_bld
=usage
my $_formulate_bld = $self->_formulate_bld();
=description
The _formulate_bld function returns settings for the build directive.
=signature
_formulate_bld(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_bld';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_clr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_clr
=usage
my $_formulate_clr = $self->_formulate_clr();
=description
The _formulate_clr function returns settings for the clearer directive.
=signature
_formulate_clr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_clr';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_crc.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_crc
=usage
my $_formulate_crc = $self->_formulate_crc();
=description
The _formulate_crc function returns settings for the coerce directive.
=signature
_formulate_crc(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_crc';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_def.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_def
=usage
my $_formulate_def = $self->_formulate_def();
=description
The _formulate_def function returns settings for the default directive.
=signature
_formulate_def(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_def';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_hnd.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_hnd
=usage
my $_formulate_hnd = $self->_formulate_hnd();
=description
The _formulate_hnd function returns settings for the handler directive.
=signature
_formulate_hnd(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_hnd';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_isa.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_isa
=usage
my $_formulate_isa = $self->_formulate_isa();
=description
The _formulate_isa function returns settings for the isa directive.
=signature
_formulate_isa(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_isa';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_lzy.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_lzy
=usage
my $_formulate_lzy = $self->_formulate_lzy();
=description
The _formulate_lzy function returns settings for the lazy directive.
=signature
_formulate_lzy(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_lzy';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_opt.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_opt
=usage
my $_formulate_opt = $self->_formulate_opt();
=description
The _formulate_opt function returns settings for the required directive.
=signature
_formulate_opt(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_opt';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_opts.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_opts
=usage
my $_formulate_opts = $self->_formulate_opts();
=description
The _formulate_opts function returns settings for the required directive.
=signature
_formulate_opt(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_opts';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_pre.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_pre
=usage
my $_formulate_pre = $self->_formulate_pre();
=description
The _formulate_pre function returns settings for the predicate directive.
=signature
_formulate_pre(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_pre';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_rdr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_rdr
=usage
my $_formulate_rdr = $self->_formulate_rdr();
=description
The _formulate_rdr function returns settings for the reader directive.
=signature
_formulate_rdr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_rdr';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_req.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_req
=usage
my $_formulate_req = $self->_formulate_req();
=description
The _formulate_req function returns settings for the required directive.
=signature
_formulate_req(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_req';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_tgr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_tgr
=usage
my $_formulate_tgr = $self->_formulate_tgr();
=description
The _formulate_tgr function returns settings for the trigger directive.
=signature
_formulate_tgr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_tgr';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_wkr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_wkr
=usage
my $_formulate_wkr = $self->_formulate_wkr();
=description
The _formulate_wkr function returns settings for the weak_ref directive.
=signature
_formulate_wkr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_wkr';
ok 1 and done_testing;
t/0.90/can/Data_Object_ClassHas__formulate_wrt.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_wrt
=usage
my $_formulate_wrt = $self->_formulate_wrt();
=description
The _formulate_wrt function returns settings for the writer directive.
=signature
_formulate_wrt(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::ClassHas';
my $data = 'Data::Object::ClassHas';
can_ok $data, '_formulate_wrt';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_bld.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_bld
=usage
my $_formulate_bld = $self->_formulate_bld();
=description
The _formulate_bld function returns settings for the build directive.
=signature
_formulate_bld(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_bld';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_clr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_clr
=usage
my $_formulate_clr = $self->_formulate_clr();
=description
The _formulate_clr function returns settings for the clearer directive.
=signature
_formulate_clr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_clr';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_crc.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_crc
=usage
my $_formulate_crc = $self->_formulate_crc();
=description
The _formulate_crc function returns settings for the coerce directive.
=signature
_formulate_crc(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_crc';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_def.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_def
=usage
my $_formulate_def = $self->_formulate_def();
=description
The _formulate_def function returns settings for the default directive.
=signature
_formulate_def(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_def';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_hld.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_hld
=usage
my $_formulate_hld = $self->_formulate_hld();
=description
The _formulate_hld function returns settings for the handler directive.
=signature
_formulate_hld(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_hld';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_isa.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_isa
=usage
my $_formulate_isa = $self->_formulate_isa();
=description
The _formulate_isa function returns settings for the isa directive.
=signature
_formulate_isa(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_isa';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_lzy.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_lzy
=usage
my $_formulate_lzy = $self->_formulate_lzy();
=description
The _formulate_lzy function returns settings for the lazy directive.
=signature
_formulate_lzy(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_lzy';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_opt.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_opt
=usage
my $_formulate_opt = $self->_formulate_opt();
=description
The _formulate_opt function returns settings for the required directive.
=signature
_formulate_opt(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_opt';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_opts.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_opts
=usage
my $_formulate_opts = $self->_formulate_opts();
=description
The _formulate_opts function returns settings for the required directive.
=signature
_formulate_opt(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_opts';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_pre.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_pre
=usage
my $_formulate_pre = $self->_formulate_pre();
=description
The _formulate_pre function returns settings for the predicate directive.
=signature
_formulate_pre(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_pre';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_rdr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_rdr
=usage
my $_formulate_rdr = $self->_formulate_rdr();
=description
The _formulate_rdr function returns settings for the reader directive.
=signature
_formulate_rdr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_rdr';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_req.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_req
=usage
my $_formulate_req = $self->_formulate_req();
=description
The _formulate_req function returns settings for the required directive.
=signature
_formulate_req(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_req';
ok 1 and done_testing;
t/0.90/can/Data_Object_RoleHas__formulate_tgr.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
# POD
=name
_formulate_tgr
=usage
my $_formulate_tgr = $self->_formulate_tgr();
=description
The _formulate_tgr function returns settings for the trigger directive.
=signature
_formulate_tgr(HashRef $arg1, Str $arg2, Any $arg3) : Any
=type
function
=cut
# TESTING
use_ok 'Data::Object::RoleHas';
my $data = 'Data::Object::RoleHas';
can_ok $data, '_formulate_tgr';
ok 1 and done_testing;