use warnings;
use base 'Exporter';
-our $VERSION = '0.08';
+our $VERSION = '0.11';
use 5.006;
use Carp 'confess';
functionality, faster. In particular, L<Moose/has> is missing only a few
expert-level features.
+We're also going as light on dependencies as possible. Most functions we use
+from L<Scalar::Util> are copied into this dist. L<Scalar::Util> is required if
+you'd like weak references; there's simply no way to do it from pure Perl.
+L<Class::Method::Modifiers> is required if you want support for L</before>,
+L</after>, and L</around>.
+
=head2 MOOSE COMPAT
Compatibility with Moose has been the utmost concern. Fewer than 1% of the
Installs a "before" method modifier. See L<Moose/before> or
L<Class::Method::Modifiers/before>.
+Use of this feature requires L<Class::Method::Modifiers>!
+
=head2 after (method|methods) => Code
Installs an "after" method modifier. See L<Moose/after> or
L<Class::Method::Modifiers/after>.
+Use of this feature requires L<Class::Method::Modifiers>!
+
=head2 around (method|methods) => Code
Installs an "around" method modifier. See L<Moose/around> or
L<Class::Method::Modifiers/around>.
+Use of this feature requires L<Class::Method::Modifiers>!
+
=head2 has (name|names) => parameters
Adds an attribute (or if passed an arrayref of names, multiple attributes) to
has a builder, then providing a value for the attribute in the constructor is
optional.
-=item init_arg => Str
+=item init_arg => Str | Undef
-Allows you to use a different key name in the constructor.
+Allows you to use a different key name in the constructor. If undef, the
+attribue can't be passed to the constructor.
=item default => Value | CodeRef
Lets you automatically weaken any reference stored in the attribute.
+Use of this feature requires L<Scalar::Util>!
+
=item trigger => CodeRef
Any time the attribute's value is set (either through the accessor or the constructor), the trigger is called on it. The trigger receives as arguments the instance, the new value, and the attribute instance.
-Mouse 0.05 supported more complex triggers, but this behavior is now deprecated.
+Mouse 0.05 supported more complex triggers, but this behavior is now removed.
=item builder => Str
Shawn M Moore, C<< <sartak at gmail.com> >>
+Yuval Kogman, C<< <nothingmuch at woobling.org> >>
+
with plenty of code borrowed from L<Class::MOP> and L<Moose>
=head1 BUGS