3 class CatalystX::Declare::Keyword::Component
4 extends MooseX::Declare::Syntax::Keyword::Class
5 with CatalystX::Declare::DefaultSuperclassing {
8 before add_namespace_customizations (Object $ctx, Str $package) {
10 $ctx->add_preamble_code_parts(
15 method default_superclasses { 'Catalyst::Component' }
22 CatalystX::Declare::Keyword::Component - Declare Catalyst Components
26 This handler provides common functionality for all component handlers.
27 Please refer to the respective keyword handler documentation for more
32 =item L<CatalystX::Declare::Keyword::Model>
34 =item L<CatalystX::Declare::Keyword::View>
36 =item L<CatalystX::Declare::Keyword::Controller>
44 =item L<MooseX::Declare::Syntax::Keyword::Class>
52 These methods are implementation details. Unless you are extending or
53 developing L<CatalystX::Declare>, you should not be concerned with them.
55 =head2 add_namespace_customizations
57 Object->add_namespace_customizations (Object $ctx, Str $package)
59 This will simply add L<CLASS> to the imported modules, to make C<CLASS>
60 and C<$CLASS> available in the component.
62 =head2 default_superclasses
64 List[Str] Object->default_superclasses ()
66 Returns L<Catalyst::Component> as default superclass for components. The
67 subclasses for other component keywords will usually want to override this.
73 =item L<CatalystX::Declare>
75 =item L<CatalystX::Declare::Keyword::Model>
77 =item L<CatalystX::Declare::Keyword::View>
79 =item L<CatalystX::Declare::Keyword::Controller>
81 =item L<MooseX::Declare/class>
87 See L<CatalystX::Declare/AUTHOR> for author information.
91 This program is free software; you can redistribute it and/or modify it under
92 the same terms as perl itself.