summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorkpdecker <kpdecker@gmail.com>2014-11-26 09:01:03 -0600
committerkpdecker <kpdecker@gmail.com>2014-11-26 09:01:03 -0600
commit61dd721ca2a9055036d0f350970d033ca5227411 (patch)
tree398a184db4673792629973a3b11d9a46aa108bb0 /src
parent3a9440f954092558275cd4c05a35ba34bcbfa210 (diff)
downloadhandlebars.js-61dd721ca2a9055036d0f350970d033ca5227411.zip
handlebars.js-61dd721ca2a9055036d0f350970d033ca5227411.tar.gz
handlebars.js-61dd721ca2a9055036d0f350970d033ca5227411.tar.bz2
Update AST location info to match SpiderMonkey
Part of #889
Diffstat (limited to 'src')
-rw-r--r--src/handlebars.yy48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/handlebars.yy b/src/handlebars.yy
index 775d5ca..f5c69ff 100644
--- a/src/handlebars.yy
+++ b/src/handlebars.yy
@@ -9,7 +9,7 @@ root
;
program
- : statement* -> new yy.ProgramNode(yy.prepareProgram($1), null, {}, @$)
+ : statement* -> new yy.ProgramNode(yy.prepareProgram($1), null, {}, yy.locInfo(@$))
;
statement
@@ -18,15 +18,15 @@ statement
| rawBlock -> $1
| partial -> $1
| content -> $1
- | COMMENT -> new yy.CommentNode(yy.stripComment($1), yy.stripFlags($1, $1), @$)
+ | COMMENT -> new yy.CommentNode(yy.stripComment($1), yy.stripFlags($1, $1), yy.locInfo(@$))
;
content
- : CONTENT -> new yy.ContentNode($1, @$)
+ : CONTENT -> new yy.ContentNode($1, yy.locInfo(@$))
;
rawBlock
- : openRawBlock content END_RAW_BLOCK -> yy.prepareRawBlock($1, $2, $3, @$)
+ : openRawBlock content END_RAW_BLOCK -> yy.prepareRawBlock($1, $2, $3, yy.locInfo(@$))
;
openRawBlock
@@ -34,8 +34,8 @@ openRawBlock
;
block
- : openBlock program inverseChain? closeBlock -> yy.prepareBlock($1, $2, $3, $4, false, @$)
- | openInverse program inverseAndProgram? closeBlock -> yy.prepareBlock($1, $2, $3, $4, true, @$)
+ : openBlock program inverseChain? closeBlock -> yy.prepareBlock($1, $2, $3, $4, false, yy.locInfo(@$))
+ | openInverse program inverseAndProgram? closeBlock -> yy.prepareBlock($1, $2, $3, $4, true, yy.locInfo(@$))
;
openBlock
@@ -47,7 +47,7 @@ openInverse
;
openInverseChain
- : OPEN_INVERSE_CHAIN sexpr CLOSE -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), @$)
+ : OPEN_INVERSE_CHAIN sexpr CLOSE -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), yy.locInfo(@$))
;
inverseAndProgram
@@ -56,8 +56,8 @@ inverseAndProgram
inverseChain
: openInverseChain program inverseChain? {
- var inverse = yy.prepareBlock($1, $2, $3, $3, false, @$),
- program = new yy.ProgramNode(yy.prepareProgram([inverse]), null, {}, @$);
+ var inverse = yy.prepareBlock($1, $2, $3, $3, false, yy.locInfo(@$)),
+ program = new yy.ProgramNode(yy.prepareProgram([inverse]), null, {}, yy.locInfo(@$));
program.inverse = inverse;
@@ -73,31 +73,31 @@ closeBlock
mustache
// Parsing out the '&' escape token at AST level saves ~500 bytes after min due to the removal of one parser node.
// This also allows for handler unification as all mustache node instances can utilize the same handler
- : OPEN sexpr CLOSE -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), @$)
- | OPEN_UNESCAPED sexpr CLOSE_UNESCAPED -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), @$)
+ : OPEN sexpr CLOSE -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), yy.locInfo(@$))
+ | OPEN_UNESCAPED sexpr CLOSE_UNESCAPED -> new yy.MustacheNode($2, null, $1, yy.stripFlags($1, $3), yy.locInfo(@$))
;
partial
- : OPEN_PARTIAL partialName param hash? CLOSE -> new yy.PartialNode($2, $3, $4, yy.stripFlags($1, $5), @$)
- | OPEN_PARTIAL partialName hash? CLOSE -> new yy.PartialNode($2, undefined, $3, yy.stripFlags($1, $4), @$)
+ : OPEN_PARTIAL partialName param hash? CLOSE -> new yy.PartialNode($2, $3, $4, yy.stripFlags($1, $5), yy.locInfo(@$))
+ | OPEN_PARTIAL partialName hash? CLOSE -> new yy.PartialNode($2, undefined, $3, yy.stripFlags($1, $4), yy.locInfo(@$))
;
sexpr
- : path param* hash? -> new yy.SexprNode([$1].concat($2), $3, @$)
- | dataName -> new yy.SexprNode([$1], null, @$)
+ : path param* hash? -> new yy.SexprNode([$1].concat($2), $3, yy.locInfo(@$))
+ | dataName -> new yy.SexprNode([$1], null, yy.locInfo(@$))
;
param
: path -> $1
- | STRING -> new yy.StringNode($1, @$)
- | NUMBER -> new yy.NumberNode($1, @$)
- | BOOLEAN -> new yy.BooleanNode($1, @$)
+ | STRING -> new yy.StringNode($1, yy.locInfo(@$))
+ | NUMBER -> new yy.NumberNode($1, yy.locInfo(@$))
+ | BOOLEAN -> new yy.BooleanNode($1, yy.locInfo(@$))
| dataName -> $1
| OPEN_SEXPR sexpr CLOSE_SEXPR {$2.isHelper = true; $$ = $2;}
;
hash
- : hashSegment+ -> new yy.HashNode($1, @$)
+ : hashSegment+ -> new yy.HashNode($1, yy.locInfo(@$))
;
hashSegment
@@ -109,17 +109,17 @@ blockParams
;
partialName
- : path -> new yy.PartialNameNode($1, @$)
- | STRING -> new yy.PartialNameNode(new yy.StringNode($1, @$), @$)
- | NUMBER -> new yy.PartialNameNode(new yy.NumberNode($1, @$))
+ : path -> new yy.PartialNameNode($1, yy.locInfo(@$))
+ | STRING -> new yy.PartialNameNode(new yy.StringNode($1, yy.locInfo(@$)), yy.locInfo(@$))
+ | NUMBER -> new yy.PartialNameNode(new yy.NumberNode($1, yy.locInfo(@$)))
;
dataName
- : DATA path -> new yy.DataNode($2, @$)
+ : DATA path -> new yy.DataNode($2, yy.locInfo(@$))
;
path
- : pathSegments -> new yy.IdNode($1, @$)
+ : pathSegments -> new yy.IdNode($1, yy.locInfo(@$))
;
pathSegments