Do

 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;



( run in 1.340 second using v1.01-cache-2.11-cpan-5735350b133 )