##
use Moose;
extends 'Catalyst::Controller'; # normal
# vs...
extends 'Catalyst::Controller::REST'; # changes behavior of things
####
sub begin :SOME_MAGIC_ATTRIBUTE {}
####
sub begin {
my ($self, $c)= @_;
if ($c->req->method ne 'GET') {
$c->res->code(404);
$c->detch;
}
####
package MyApp::Controller::Root;
sub begin { ... }