summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorGianni Ceccarelli <dakkar@thenautilus.net>2011-11-14 16:48:37 +0000
committerGianni Ceccarelli <dakkar@thenautilus.net>2011-11-14 16:48:37 +0000
commite4e0e149ef3bf356e9cbbdf585526787213efa12 (patch)
tree142f5da0173c6ff0af4fcbc1934ff96de9f9e8e6 /lib
parentBuild results of bb2712c (on master) (diff)
parentallow (and test) custom-named multi accessors (diff)
downloaddata-multivalued-e4e0e149ef3bf356e9cbbdf585526787213efa12.tar.gz
data-multivalued-e4e0e149ef3bf356e9cbbdf585526787213efa12.tar.bz2
data-multivalued-e4e0e149ef3bf356e9cbbdf585526787213efa12.zip
Build results of bb2712c (on master)
Diffstat (limited to 'lib')
-rw-r--r--lib/Data/MultiValued/AttributeTrait/Ranges.pm38
-rw-r--r--lib/Data/MultiValued/AttributeTrait/Tags.pm38
-rw-r--r--lib/Data/MultiValued/AttributeTrait/TagsAndRanges.pm38
3 files changed, 111 insertions, 3 deletions
diff --git a/lib/Data/MultiValued/AttributeTrait/Ranges.pm b/lib/Data/MultiValued/AttributeTrait/Ranges.pm
index 347ee96..e42c91e 100644
--- a/lib/Data/MultiValued/AttributeTrait/Ranges.pm
+++ b/lib/Data/MultiValued/AttributeTrait/Ranges.pm
@@ -9,6 +9,9 @@ use Moose::Role;
use Data::MultiValued::Ranges;
with 'Data::MultiValued::AttributeTrait';
+# ABSTRACT: attribute traits for attributes holding ranged values
+
+
sub multivalue_storage_class { 'Data::MultiValued::Ranges' };
sub opts_to_pass_set { qw(from to) }
sub opts_to_pass_get { qw(at) }
@@ -30,12 +33,45 @@ __END__
=head1 NAME
-Data::MultiValued::AttributeTrait::Ranges
+Data::MultiValued::AttributeTrait::Ranges - attribute traits for attributes holding ranged values
=head1 VERSION
version 0.0.1
+=head1 SYNOPSIS
+
+ package My::Class;
+ use Moose;
+ use Data::MultiValued::AttributeTrait::Ranges;
+
+ has stuff => (
+ is => 'rw',
+ isa => 'Int',
+ traits => ['MultiValued::Ranges'],
+ predicate => 'has_stuff',
+ multi_accessor => 'stuff_tagged',
+ multi_predicate => 'has_stuff_tagged',
+ );
+
+=head1 DESCRIPTION
+
+This role consumes L<Data::MultiValued::AttributeTrait> and
+specialises it to use L<Data::MultiValued::Ranges> as multi-value
+storage:
+
+=head2 C<multivalue_storage_class>
+
+Returns C<'Data::MultiValued::Ranges'>.
+
+=head2 C<opts_to_pass_set>
+
+Returns C<('from', 'to')>.
+
+=head2 C<opts_to_pass_get>
+
+Returns C<('at')>.
+
=head1 AUTHOR
Gianni Ceccarelli <dakkar@thenautilus.net>
diff --git a/lib/Data/MultiValued/AttributeTrait/Tags.pm b/lib/Data/MultiValued/AttributeTrait/Tags.pm
index 4355ebe..4765a93 100644
--- a/lib/Data/MultiValued/AttributeTrait/Tags.pm
+++ b/lib/Data/MultiValued/AttributeTrait/Tags.pm
@@ -9,6 +9,9 @@ use Moose::Role;
use Data::MultiValued::Tags;
with 'Data::MultiValued::AttributeTrait';
+# ABSTRACT: attribute traits for attributes holding tagged values
+
+
sub multivalue_storage_class { 'Data::MultiValued::Tags' };
sub opts_to_pass_set { qw(tag) }
sub opts_to_pass_get { qw(tag) }
@@ -30,12 +33,45 @@ __END__
=head1 NAME
-Data::MultiValued::AttributeTrait::Tags
+Data::MultiValued::AttributeTrait::Tags - attribute traits for attributes holding tagged values
=head1 VERSION
version 0.0.1
+=head1 SYNOPSIS
+
+ package My::Class;
+ use Moose;
+ use Data::MultiValued::AttributeTrait::Tags;
+
+ has stuff => (
+ is => 'rw',
+ isa => 'Int',
+ traits => ['MultiValued::Tags'],
+ predicate => 'has_stuff',
+ multi_accessor => 'stuff_tagged',
+ multi_predicate => 'has_stuff_tagged',
+ );
+
+=head1 DESCRIPTION
+
+This role consumes L<Data::MultiValued::AttributeTrait> and
+specialises it to use L<Data::MultiValued::Tags> as multi-value
+storage:
+
+=head2 C<multivalue_storage_class>
+
+Returns C<'Data::MultiValued::Tags'>.
+
+=head2 C<opts_to_pass_set>
+
+Returns C<('tag')>.
+
+=head2 C<opts_to_pass_get>
+
+Returns C<('tag')>.
+
=head1 AUTHOR
Gianni Ceccarelli <dakkar@thenautilus.net>
diff --git a/lib/Data/MultiValued/AttributeTrait/TagsAndRanges.pm b/lib/Data/MultiValued/AttributeTrait/TagsAndRanges.pm
index 20b4acd..e31a725 100644
--- a/lib/Data/MultiValued/AttributeTrait/TagsAndRanges.pm
+++ b/lib/Data/MultiValued/AttributeTrait/TagsAndRanges.pm
@@ -9,6 +9,9 @@ use Moose::Role;
use Data::MultiValued::TagsAndRanges;
with 'Data::MultiValued::AttributeTrait';
+# ABSTRACT: attribute traits for attributes holding tagged and ranged values
+
+
sub multivalue_storage_class { 'Data::MultiValued::TagsAndRanges' };
sub opts_to_pass_set { qw(from to tag) }
sub opts_to_pass_get { qw(at tag) }
@@ -30,12 +33,45 @@ __END__
=head1 NAME
-Data::MultiValued::AttributeTrait::TagsAndRanges
+Data::MultiValued::AttributeTrait::TagsAndRanges - attribute traits for attributes holding tagged and ranged values
=head1 VERSION
version 0.0.1
+=head1 SYNOPSIS
+
+ package My::Class;
+ use Moose;
+ use Data::MultiValued::AttributeTrait::TagsAndRanges;
+
+ has stuff => (
+ is => 'rw',
+ isa => 'Int',
+ traits => ['MultiValued::TagsAndRanges'],
+ predicate => 'has_stuff',
+ multi_accessor => 'stuff_tagged',
+ multi_predicate => 'has_stuff_tagged',
+ );
+
+=head1 DESCRIPTION
+
+This role consumes L<Data::MultiValued::AttributeTrait> and
+specialises it to use L<Data::MultiValued::TagsAndRanges> as multi-value
+storage:
+
+=head2 C<multivalue_storage_class>
+
+Returns C<'Data::MultiValued::TagsAndRanges'>.
+
+=head2 C<opts_to_pass_set>
+
+Returns C<('tag', 'from', 'to')>.
+
+=head2 C<opts_to_pass_get>
+
+Returns C<('tag', 'at')>.
+
=head1 AUTHOR
Gianni Ceccarelli <dakkar@thenautilus.net>