-
package Moose::Meta::Attribute::Native::Trait::String;
use Moose::Role;
-our $VERSION = '0.87';
+our $VERSION = '0.89';
$VERSION = eval $VERSION;
our $AUTHORITY = 'cpan:STEVAN';
package MyHomePage;
use Moose;
- use Moose::AttributeHelpers;
has 'text' => (
- metaclass => 'String',
+ traits => ['String'],
is => 'rw',
isa => 'Str',
default => q{},
- handles => {
+ handles => {
add_text => 'append',
replace_text => 'replace',
- }
+ },
);
my $page = MyHomePage->new();
has 'foo' => (metaclass => 'String');
$obj->append_foo;
-=head1 METHODS
-
-=over 4
-
-=item B<meta>
-
-=item B<method_provider>
-
-=item B<has_method_provider>
-
-=back
-
=head1 PROVIDED METHODS
-It is important to note that all those methods do in place
-modification of the value stored in the attribute.
+These methods are implemented in
+L<Moose::Meta::Attribute::Native::MethodProvider::STring>. It is important to
+note that all those methods do in place modification of the value stored in
+the attribute.
=over 4
-=item I<inc>
+=item B<inc>
Increments the value stored in this slot using the magical string autoincrement
operator. Note that Perl doesn't provide analogous behavior in C<-->, so
C<dec> is not available.
-=item I<append> C<$string>
+=item B<append($string)>
Append a string, like C<.=>.
-=item I<prepend> C<$string>
+=item B<prepend($string)>
Prepend a string.
-=item I<replace> C<$pattern> C<$replacement>
+=item B<replace($pattern, $replacement)>
Performs a regexp substitution (L<perlop/s>). There is no way to provide the
C<g> flag, but code references will be accepted for the replacement, causing
the regex to be modified with a single C<e>. C</smxi> can be applied using the
C<qr> operator.
-=item I<match> C<$pattern>
+=item B<match($pattern)>
-Like I<replace> but without the replacement. Provided mostly for completeness.
+Like C<replace> but without the replacement. Provided mostly for completeness.
-=item C<chop>
+=item B<chop>
L<perlfunc/chop>
-=item C<chomp>
+=item B<chomp>
L<perlfunc/chomp>
-=item C<clear>
+=item B<clear>
Sets the string to the empty string (not the value passed to C<default>).
=back
+=head1 METHODS
+
+=over 4
+
+=item B<meta>
+
+=item B<method_provider>
+
+=item B<has_method_provider>
+
+=back
+
=head1 BUGS
All complex software has bugs lurking in it, and this module is no