Applying roles to the attribute metaclass lets you provide
composable attribute functionality.
-=item L<Moose::Cookbook::Meta::Recipe5> - The "table" attribute implemented as a metaclass trait
+=item L<Moose::Cookbook::Meta::Table_MetaclassTrait>
This recipe takes the class metaclass we saw in the previous recipe
and reimplements it as a metaclass trait.
=head2 Metaclass Extensions
One way of extending Moose is by extending one or more Moose
-metaclasses. For example, in L<Moose::Cookbook::Meta::Recipe5> we saw
+metaclasses. For example, in L<Moose::Cookbook::Meta::Table_MetaclassTrait> we saw
a metaclass role that added a C<table> attribute to the
metaclass. If you were writing an ORM, this would be a logical
extension.
class like C<MooseX::Embiggen::Meta::Attribute::Role::Big>.
See L<Moose::Cookbook::Meta::Labeled_AttributeTrait> and
-L<Moose::Cookbook::Meta::Recipe5> for examples of traits in action. In
-particular, both of these recipes demonstrate the trait resolution
+L<Moose::Cookbook::Meta::Table_MetaclassTrait> for examples of traits in
+action. In particular, both of these recipes demonstrate the trait resolution
mechanism.
Implementing an extension as a (set of) metaclass or base object
This recipe expands on the use of L<Moose::Exporter> we saw in
L<Moose::Cookbook::Extending::Recipe1> and the class metaclass trait we saw in
-L<Moose::Cookbook::Meta::Recipe5>. In this example we provide our own
-metaclass trait, and we also export a C<has_table> sugar function.
+L<Moose::Cookbook::Meta::Table_MetaclassTrait>. In this example we provide our
+own metaclass trait, and we also export a C<has_table> sugar function.
The C<with_meta> parameter specifies a list of functions that should
be wrapped before exporting. The wrapper simply ensures that the
-package Moose::Cookbook::Meta::Recipe5;
+package Moose::Cookbook::Meta::Table_MetaclassTrait;
# ABSTRACT: Adding a "table" attribute as a metaclass trait