我正在阅读github上的tweetylicious源码来研究Mojolicious框架:
但是我对下面的代码感到困惑ladder sub ....Perl是什么意思?它看起来不像普通的Perl语法.
顺便说一下,我和Strawberry Perl 5在一起.
# The rest of the routes are specific to logged in users, so we
# add a ladder to make sure (instead of making sure inside each route)
ladder sub {
my $self = shift;
return 1 if $self->session('name');
$self->redirect_to('/login') and return;
};
Run Code Online (Sandbox Code Playgroud)
它是对一个被调用的子程序的调用ladder,它需要一个代码引用作为它的第一个参数.它相当于
$tmpfunc = sub {
my $self = shift;
return 1 if $self->session('name');
$self->redirect_to('/login') and return;
};
ladder($tmpfunc);
Run Code Online (Sandbox Code Playgroud)