File: MyDancerDSL.pm

package info (click to toggle)
libdancer2-perl 0.400001%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 2,580 kB
  • sloc: perl: 8,461; makefile: 9
file content (36 lines) | stat: -rw-r--r-- 1,009 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package MyDancerDSL;

use Moo;
use Dancer2::Core::Hook;
use Dancer2::Core::Error;
use Dancer2::FileUtils;
use Carp;

extends 'Dancer2::Core::DSL';

around dsl_keywords => sub {
    my $orig     = shift;
    my $keywords = $orig->(@_);

    $keywords->{gateau} = { is_global => 0 }; # cookie
    $keywords->{moteur} = { is_global => 1 }; # engine
    $keywords->{stop}   = { is_global => 0 }; # halt
    $keywords->{prend}  = { is_global => 1, prototype => '@' };  # get
    $keywords->{envoie} = { is_global => 1, prototype => '$&' }; # post
    $keywords->{entete} = { is_global => 0 }; #header

    $keywords->{proto} = { is_global => 1, prototype => '&' }; # prototype

    return $keywords;
};

sub gateau { goto &Dancer2::Core::DSL::cookie }
sub moteur { goto &Dancer2::Core::DSL::engine }
sub stop   { goto &Dancer2::Core::DSL::halt }
sub prend  { goto &Dancer2::Core::DSL::get }
sub envoie { goto &Dancer2::Core::DSL::post }
sub entete { goto &Dancer2::Core::DSL::header }

sub proto { $_[1]->() }

1;