+package Moose::Cookbook::Meta::Recipe1;
-=pod
+# ABSTRACT: Welcome to the meta world (Why Go Meta?)
+
+__END__
-=head1 NAME
-Moose::Cookbook::Meta::Recipe1 - Welcome to the meta world (Why Go Meta?)
+=pod
=head1 SUMMARY
Let's say that you want to add additional properties to
attributes. Specifically, we want to add a "label" property to each
attribute, so we can write C<<
-My::Class->meta()->get_attribute('size')->label() >>. The first two
-recipes show two different ways to do this, one with a full
-meta-attribute subclass, and the other with an attribute trait.
+My::Class->meta()->get_attribute('size')->label() >>. The first
+recipe shows how to do this using an attribute trait.
You might also want to add additional properties to your
metaclass. For example, if you were writing an ORM based on Moose, you
=head1 SEE ALSO
Many of the MooseX modules on CPAN implement metaclass extensions. A
-couple good examples include L<MooseX::Singleton> and
-L<MooseX::AttributeHelpers>. For a more complex example see
-L<Fey::ORM> or L<Reaction>.
-
-=head1 AUTHOR
-
-Dave Rolsky E<lt>autarch@urth.org<gt>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 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.
+couple good examples include L<MooseX::Aliases> and
+L<MooseX::UndefTolerant>. For a more complex example see
+L<Fey::ORM> or L<Bread::Board::Declare>.
=cut