kpdecker
6a7a8c803d
Rename AST objects to match type names
2014-11-28 14:42:24 -06:00
kpdecker
1124908d2a
Update subexpression and hash AST constructs
2014-11-27 08:37:48 -06:00
kpdecker
2a4819d75c
Update statement node ASTs
2014-11-26 19:04:18 -06:00
kpdecker
df421f1e4b
Update ProgramNode to better match SpiderMonkey
2014-11-26 09:18:33 -06:00
kpdecker
61dd721ca2
Update AST location info to match SpiderMonkey
...
Part of #889
2014-11-26 09:01:03 -06:00
Martin Muñoz
b8a9f7264d
Add parser support for block params
2014-11-11 21:35:10 -05:00
kpdecker
bf8cc50798
Merge branch 'remove-block-mustache' of github.com:mmun/handlebars.js into mmun-remove-block-mustache
...
Conflicts:
lib/handlebars/compiler/helpers.js
spec/parser.js
2014-11-08 18:57:06 -06:00
Kevin Decker
ea6b0be910
Merge pull request #892 from wycats/else-if
...
Implement parser for else chaining of helpers
2014-11-08 17:49:14 -06:00
kpdecker
d47e4dd1f7
Bump test coverage
2014-11-08 14:35:23 -06:00
Martin Muñoz
a5d0491d57
Remove RawBlockNode in favor of prepareRawBlock helper
2014-11-05 11:00:39 -05:00
Martin Muñoz
12e3d210e8
Simplify BlockNode by removing intermediate MustacheNode
2014-11-02 18:19:20 -05:00
kpdecker
f30b3ea329
Allow whitespace control on comments
...
This changes the call signature for the CommentNode constructor, which is a potentially breaking change for AST users.
Fixes #866
2014-11-02 11:55:52 -06:00
kpdecker
4282668d47
Implement parser for else chaining of helpers
...
Allows users to chain multiple helpers together using their inverse callbacks. I.e.
```
{{#if foo}}
{{else if bar}}
{{else}}
{{/if}}
```
The control flow here effectively causes the helpers to be nested. The above is actually syntactic sugar for this:
```
{{#if foo}}
{{else}}
{{#if bar}}
{{else}}
{{/if}}
{{/if}}
```
Any helper may be used in this manner, the only requirement is they support normal calls and inverse calls.
Introduces a breaking change in that `{{else foo}}` may no longer be used as a root level operator. Instead `{{^foo}}` must be used.
Fixes #72 .
2014-10-27 19:17:16 -05:00
kpdecker
dc9a2ed7eb
Refactor content blocks to ignore lines
...
We can simplify our previous standalone determination logic by merging content blocks again.
Fixes #854
2014-08-25 13:27:28 -05:00
kpdecker
cde008b49f
Cleanup from code coverage report
2014-08-23 17:44:45 -05:00
kpdecker
84d646bb5d
Move strip processing into AST helper logic
...
We already have to track these behaviors for the standalone parsing and rather than having two whitespace pruning implementations this moves all of the behavior into one place.
Fixes #852
2014-08-23 17:44:20 -05:00
kpdecker
ccd803ff15
Replace string value rather than add omit flag
2014-08-23 16:37:30 -05:00
kpdecker
529e2b6796
Merge branch 'refactor-parser' of github.com:mmun/handlebars.js into mmun-refactor-parser
...
Conflicts:
lib/handlebars/compiler/ast.js
spec/ast.js
src/handlebars.yy
2014-08-23 16:29:22 -05:00
Martin Muñoz
eee2c4d4f2
Refactor blocks, programs and inverses
2014-07-29 02:45:50 -04:00