DispatchTypes' POD refers to Catalyst::Manual::Intro, nominated as the best location...
[catagits/Catalyst-Runtime.git] / lib / Catalyst / DispatchType.pm
index a3f271e..fb4d0af 100644 (file)
@@ -1,7 +1,8 @@
 package Catalyst::DispatchType;
 
-use strict;
-use base 'Class::Accessor::Fast';
+use Moose;
+with 'MooseX::Emulate::Class::Accessor::Fast';
+no Moose;
 
 =head1 NAME
 
@@ -13,7 +14,12 @@ See L<Catalyst>.
 
 =head1 DESCRIPTION
 
-This is an abstract base class for Dispatch Types. 
+This is an abstract base class for Dispatch Types.
+
+From a code perspective, dispatch types are used to find which actions
+to call for a given request URL.  Website authors will typically work
+with them via subroutine names attributes; a description of dispatch
+at the attribute/URL level is given in L<Catalyst::Manual::Intro>.
 
 =head1 METHODS
 
@@ -58,6 +64,15 @@ arrayref, or undef if unable to do so.
 
 sub uri_for_action { }
 
+=head2 $self->expand_action
+
+Default fallback, returns nothing. See L<Catalyst::Dispatcher> for more info
+about expand_action.
+
+=cut
+
+sub expand_action { }
+
 =head1 AUTHORS
 
 Catalyst Contributors, see Catalyst.pm
@@ -69,4 +84,6 @@ the same terms as Perl itself.
 
 =cut
 
+__PACKAGE__->meta->make_immutable;
+
 1;