diff options
Diffstat (limited to 'lib/Data/MultiValued')
-rw-r--r-- | lib/Data/MultiValued/AttributeTrait.pm | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/lib/Data/MultiValued/AttributeTrait.pm b/lib/Data/MultiValued/AttributeTrait.pm index 5841177..fb92de8 100644 --- a/lib/Data/MultiValued/AttributeTrait.pm +++ b/lib/Data/MultiValued/AttributeTrait.pm @@ -300,10 +300,18 @@ This role (together with L<Data::MultiValued::AttributeAccessors>) defines all the basic plumbing to glue C<Data::MultiValued::Tags> etc into Moose attributes. -=head1 ATTRIBUTES +=head2 Implementation details -These are the attributes that this trait adds to the attribute in -your class. Example: +The multi-value object is stored in the instance slot named by the +L</full_storage_slot> attribute attribute. C<before> modifiers on +getters load the appropriate value from the multi-value object into +the regular instance slot, C<after> modifiers on setters store the +value from the regular instance slot into the multi-value object. + +=head2 Attributes + +This trait adds some attributes to the attribute declarations in your +class. Example: has stuff => ( is => 'rw', @@ -314,6 +322,8 @@ your class. Example: multi_predicate => 'has_stuff_tagged', ); +=head1 ATTRIBUTES + =head2 C<full_storage_slot> The instance slot to use to store the C<Data::MultiValued::Tags> or @@ -445,14 +455,6 @@ Call the C<clear> method on the multi-value object. Return the name of the reader or writer method, honoring L</multi_reader>, L</multi_writer> and L</multi_accessor>. -=head1 Implementation details - -The multi-value object is stored in the instance slot named by the -L</full_storage_slot> attribute attribute. C<before> modifiers on -getters load the appropriate value from the multi-value object into -the regular instance slot, C<after> modifiers on setters store the -value from the regular instance slot into the multi-value object. - =head1 REQUIREMENTS These methods must be provided by any class consuming this role. See |