X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst.pm;h=ed77ef8b13c2b392e87cce5edf063ee1ff6e2957;hp=3e3587af35b1dcf8fc03c20da7e6aeb083843a3d;hb=aee7cdcc0b2b3b7dc672b4b4a31b8c3b7ef3f1f7;hpb=c29dcdc3ea9c95069e3a4e451aa9803d9eee9a94 diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index 3e3587a..ed77ef8 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -75,7 +75,7 @@ our $GO = Catalyst::Exception::Go->new; __PACKAGE__->mk_classdata($_) for qw/components arguments dispatcher engine log dispatcher_class engine_loader context_class request_class response_class stats_class - setup_finished _psgi_app loading_psgi_file/; + setup_finished _psgi_app loading_psgi_file run_options/; __PACKAGE__->dispatcher_class('Catalyst::Dispatcher'); __PACKAGE__->request_class('Catalyst::Request'); @@ -84,7 +84,7 @@ __PACKAGE__->stats_class('Catalyst::Stats'); # Remember to update this in Catalyst::Runtime as well! -our $VERSION = '5.90004'; +our $VERSION = '5.90005'; sub import { my ( $class, @arguments ) = @_; @@ -1393,11 +1393,12 @@ to interpolate all the parameters in the URI. =item @args? -Optional list of extra arguments - can be supplied in the C<< \@captures_and_args? >> -array ref, or here - whichever is easier for your code.. +Optional list of extra arguments - can be supplied in the +C<< \@captures_and_args? >> array ref, or here - whichever is easier for your +code. -If your action may have a zero, a fixed or a variable number of args (e.g. C<< Args(1) >> -for a fixed number or C<< Args() >> for a variable number).. +Your action can have zero, a fixed or a variable number of args (e.g. +C<< Args(1) >> for a fixed number or C<< Args() >> for a variable number).. =item \%query_values? @@ -1572,6 +1573,16 @@ sub welcome_message { EOF } +=head2 run_options + +Contains a hash of options passed from the application script, including +the original ARGV the script receieved, the processed values from that +ARGV and any extra arguments to the script which were not processed. + +This can be used to add custom options to your application's scripts +and setup your application differently depending on the values of these +options. + =head1 INTERNAL METHODS These methods are not meant to be used by end users.