+package Moose::Cookbook;
-=pod
+# ABSTRACT: How to cook a Moose
+
+__END__
-=head1 NAME
-Moose::Cookbook - How to cook a Moose
+=pod
=head1 DESCRIPTION
=over 4
-=item L<Moose::Cookbook::Basics::Recipe1> - The (always classic) B<Point> example
+=item L<Moose::Cookbook::Basics::Point_AttributesAndSubclassing>
-A simple Moose-based class. Demonstrates Moose attributes and subclassing.
+A simple Moose-based class. Demonstrates basic Moose attributes and subclassing.
-=item L<Moose::Cookbook::Basics::Recipe2> - A simple B<BankAccount> example
+=item L<Moose::Cookbook::Basics::BankAccount_MethodModifiersAndSubclassing>
-A slightly more complex Moose class. Demonstrates using a method
-modifier in a subclass.
+A slightly more complex Moose class. Demonstrates using a method modifier in a
+subclass.
-=item L<Moose::Cookbook::Basics::Recipe3> - A lazy B<BinaryTree> example
+=item L<Moose::Cookbook::Basics::BinaryTree_AttributeFeatures>
Demonstrates several attribute features, including types, weak
references, predicates ("does this object have a foo?"), defaults,
laziness, and triggers.
-=item L<Moose::Cookbook::Basics::Recipe4> - Subtypes, and modeling a simple B<Company> class hierarchy
+=item L<Moose::Cookbook::Basics::Company_Subtypes>
-Introduces the creation and use of custom types, a C<BUILD> method,
-and the use of C<override> in a subclass.
+Introduces the creation and use of custom types, a C<BUILD> method, and the
+use of C<override> in a subclass. This recipe also shows how to model a set of
+classes that could be used to model companies, people, employees, etc.
-=item L<Moose::Cookbook::Basics::Recipe5> - More subtypes, coercion in a B<Request> class
+=item L<Moose::Cookbook::Basics::HTTP_SubtypesAndCoercion>
-More type examples, including the use of type coercions.
+This recipe covers more subtype creation, including the use of type coercions.
-=item L<Moose::Cookbook::Basics::Recipe6> - The augment/inner example
-
-Demonstrates the use of C<augment> method modifiers, a way of turning
-the usual method overriding style "inside-out".
-
-=item L<Moose::Cookbook::Basics::Recipe7> - Making Moose fast with immutable
+=item L<Moose::Cookbook::Basics::Immutable>
Making a class immutable greatly increases the speed of accessors and
object construction.
-=item L<Moose::Cookbook::Basics::Recipe8> - Builder methods and lazy_build
+=item L<Moose::Cookbook::Basics::BinaryTree_BuilderAndLazyBuild> - Builder methods and lazy_build
The builder feature provides an inheritable and role-composable way to
provide a default attribute value.
In this recipe, we make a Moose-based subclass of L<DateTime>, a
module which does not use Moose itself.
+=item L<Moose::Cookbook::Basics::Document_AugmentAndInner>
+
+Demonstrates the use of C<augment> method modifiers, a way of turning
+the usual method overriding style "inside-out".
+
=back
=head2 Moose Roles
If you're wondering what all this "meta" stuff is, and why you should
care about it, read this "recipe".
-=item L<Moose::Cookbook::Meta::Recipe2> - A meta-attribute, attributes with labels
-
-One way to extend Moose is to provide your own attribute
-metaclasses. Attribute metaclasses let you extend attribute
-declarations (with C<has>) and behavior to provide additional
-attribute functionality.
-
=item L<Moose::Cookbook::Meta::Recipe3> - Labels implemented via attribute traits
Extending Moose's attribute metaclass is a great way to add
Applying roles to the attribute metaclass lets you provide
composable attribute functionality.
-=item L<Moose::Cookbook::Meta::Recipe4> - Adding a "table" attribute to the metaclass
-
-If you want to store more information about your classes, you'll have
-to extend C<Moose::Meta::Class>. Doing so is simple, but you'll
-probably also want to provide some sugar, so see
-L<Moose::Cookbook::Extending::Recipe2> as well.
-
=item L<Moose::Cookbook::Meta::Recipe5> - The "table" attribute implemented as a metaclass trait
This recipe takes the class metaclass we saw in the previous recipe
=back
-=head1 AUTHOR
-
-Stevan Little E<lt>stevan@iinteractive.comE<gt>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2006-2009 by Infinity Interactive, Inc.
-
-L<http://www.iinteractive.com>
-
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
=cut