my @targ;
while ($targ->isa(__PACKAGE__) and $targ ne __PACKAGE__) {
push(@targ, "${targ}::BUILD")
- if do { no strict 'refs'; defined *{"${targ}::BUILD"}{CODE} };
+ if do {
+ no strict 'refs'; no warnings 'once';
+ defined *{"${targ}::BUILD"}{CODE}
+ };
my @targ_isa = do { no strict 'refs'; @{"${targ}::ISA"} };
die "${targ} uses Multiple Inheritance: ISA is: ".join ', ', @targ_isa
if @targ_isa > 1;
}
sub _build_dispatch_parser {
- require Web::Simple::DispatchParser;
- return Web::Simple::DispatchParser->new;
+ require Web::Dispatch::Parser;
+ return Web::Dispatch::Parser->new;
}
sub _cannot_call_twice {
my $parser = $class->_build_dispatch_parser;
my $matcher = (
defined($proto) && length($proto)
- ? $parser->parse_dispatch_specification($proto)
+ ? $parser->parse($proto)
: sub { ({}, $_[1]) }
);
return $class->_build_dispatcher({
return $self->_run_cgi;
}
unless (@ARGV && $ARGV[0] =~ m{^/}) {
- return $self->_run_cli;
+ return $self->_run_cli(@ARGV);
}
my $path = shift @ARGV;