summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2012-10-05 18:52:38 -0500
committerJesse Luehrs <doy@tozt.net>2012-10-05 18:52:38 -0500
commit4274b4f60eb88018f7d0bf6d9c3c5d206231f05b (patch)
treef37902713c471189cfb202a9212deafc25beb950
parente28653cdc709f624a4e8b68078457a151c083e31 (diff)
downloadtext-handlebars-4274b4f60eb88018f7d0bf6d9c3c5d206231f05b.tar.gz
text-handlebars-4274b4f60eb88018f7d0bf6d9c3c5d206231f05b.zip
simplify
-rw-r--r--lib/Text/Xslate/Syntax/Handlebars.pm20
1 files changed, 12 insertions, 8 deletions
diff --git a/lib/Text/Xslate/Syntax/Handlebars.pm b/lib/Text/Xslate/Syntax/Handlebars.pm
index 8a6ffa5..fb59658 100644
--- a/lib/Text/Xslate/Syntax/Handlebars.pm
+++ b/lib/Text/Xslate/Syntax/Handlebars.pm
@@ -244,18 +244,22 @@ sub init_symbols {
$symbol->set_led($self->can('led_variable'));
}
- $self->infix('.', 256, $self->can('led_dot'));
- $self->infix('/', 256, $self->can('led_dot'));
+ for my $field_access (qw(. /)) {
+ $self->infix($field_access, 256, $self->can('led_dot'));
+ }
+
+ for my $block ('#', '^') {
+ $self->symbol($block)->set_std($self->can('std_block'));
+ }
- $self->symbol('#')->set_std($self->can('std_block'));
- $self->symbol('^')->set_std($self->can('std_block'));
- $self->prefix('/', 0)->is_block_end(1);
- $self->symbol('else')->is_block_end(1);
+ for my $else (qw(/ else)) {
+ $self->symbol($else)->is_block_end(1);
+ }
$self->symbol('>')->set_std($self->can('std_partial'));
- $self->prefix('&', 0)->set_nud($self->can('nud_mark_raw'));
- $self->prefix('..', 0)->set_nud($self->can('nud_uplevel'));
+ $self->symbol('&')->set_nud($self->can('nud_mark_raw'));
+ $self->symbol('..')->set_nud($self->can('nud_uplevel'));
}
# copied from Text::Xslate::Parser, but using different definitions of