automatically set your package's superclass to be L<Moose::Object>.
The reason we do this, is so that we can be sure that your class
will inherit from L<Moose::Object> and get the benefits that
-provides (see L<Moose::Object> for details). However, you don't
-actually I<have> to inherit from L<Moose::Object> if you don't
-want to. All Moose features will still be accessible to you.
+provides (such as a constructor; see L<Moose::Object> for details).
+However, you don't actually I<have> to inherit from L<Moose::Object>
+if you don't want to. All Moose features will still be accessible to
+you.
Now, onto the keywords. The first one we see here is C<has>, which
defines an instance attribute in your class:
As with B<Point>'s C<x> and C<y> attributes, this attribute has a
type constraint of C<Int>, but it differs in that it does B<not>
ask for any autogenerated accessors. The result being (aside from
-broken object encapsulation) that C<x> is a private attribute.
+broken object encapsulation) that C<z> is a private attribute.
Next comes another Moose feature which we call method "modifiers"
(or method "advice" for the AOP inclined). The modifier used here
=head1 COPYRIGHT AND LICENSE
-Copyright 2006, 2007 by Infinity Interactive, Inc.
+Copyright 2006-2008 by Infinity Interactive, Inc.
L<http://www.iinteractive.com>