not the same thing as modules like L<Class::Accessor> and
L<Class::MethodMaker>. That being said there are very few modules on CPAN
with similar goals to this module. The one I have found which is most
-like this module is L<Class::Meta>, although it's philosophy and the MOP it
+like this module is L<Class::Meta>, although its philosophy and the MOP it
creates are very different from this modules.
=head1 BUGS
=item Overridden Methods
The C<override> and C<super> keywords are allowed in roles, but
-their behavior is different from that of it's class counterparts.
+their behavior is different from that of its class counterparts.
The C<super> in a class refers directly to that class's superclass,
while the C<super> in a role is deferred and only has meaning once
the role is composed into a class. Once that composition occurs,
sub bar { ... }
By specifically excluding the C<foo> method during composition,
-we allow B<Role::FooBar> to define it's own version of C<foo>.
+we allow B<Role::FooBar> to define its own version of C<foo>.
=back
#
# subtype( 'Foo', as( 'Str', where { ... } ) );
#
-# If as() returns all it's extra arguments, this just works, and
+# If as() returns all its extra arguments, this just works, and
# preserves backwards compatibility.
sub as { { as => shift }, @_ }
sub where (&) { { where => $_[0] } }
This module can play nicely with other constraint modules with some
slight tweaking. The C<where> clause in types is expected to be a
-C<CODE> reference which checks it's first argument and returns a
+C<CODE> reference which checks its first argument and returns a
boolean. Since most constraint modules work in a similar way, it
should be simple to adapt them to work with Moose.
For more examples see the F<t/examples/example_w_DCS.t> test
file.
-Here is an example of using L<Test::Deep> and it's non-test
+Here is an example of using L<Test::Deep> and its non-test
related C<eq_deeply> function.
type 'ArrayOfHashOfBarsAndRandomNumbers',
making constraints for a Moose-class.
It also tests that an attribute which uses a 'Foo' for
-it's isa option will get the subtype Foo, and not a
+its isa option will get the subtype Foo, and not a
type representing the Foo moose class.
=cut
# now we can check that the subclass
# will seek out the correct prototypical
-# value from it's "parent"
+# value from its "parent"
is(Bar->bar, 100, '... got the value stored in the Foo prototype (through the Bar class)');
-# we can then also set it's local attrs
+# we can then also set its local attrs
Bar->baz(50);
is(Bar->baz, 50, '... got the value stored in the prototype (through the Bar class)');