| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Avoid duplicating the logic needed to check for close block mismatches.
|
|
|
|
|
|
| |
This allows for failover for missing partials as well as limited templating ability through the `{{> @partial-block }}` partial special case.
Partial fix for #1018
|
|
|
|
|
| |
These were little more than object literal statements that were less clear due to their use of index-based arguments.
Fixes #1077
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
There appears to be a bug in our use of jison causing the parent location information to be reported to programs. I wasn’t able to work through what might be causing this so instead using the location information of the statements collection to generate the proper location information.
This is a bit of a hack but we are very far behind on the Jison release train and upgrading will likely be a less than pleasant task that doesn’t provide us much benefit.
Fixes #1024
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Converts the tool chain to use babel, eslint, and webpack vs. the previous proprietary solutions.
Additionally begins enforcing additional linting concerns as well as updates the code to reflect these rules.
Fixes #855
Fixes #993
|
|
|
| |
Fixes #967
|
|
|
|
|
| |
This allows us to avoid creating unnecessary AST nodes and avoids things like isHelper.
Side effect of these changes is that @data functions can now have data parameters passed to them.
|
| |
|
|
|
| |
Rather than keeping state in the AST, which requires some gymnastics, we create a separate visitor flow which does the top down iteration necessary to calculate all of the state needed for proper whitespace control evaluation.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Part of #889
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
mmun-remove-block-mustache
Conflicts:
lib/handlebars/compiler/helpers.js
spec/parser.js
|
| | |
|
| | |
|
|\ \
| | |
| | | |
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.
|
| |/
|/| |
|
|/
|
|
|
| |
This changes the call signature for the CommentNode constructor, which is a potentially breaking change for AST users.
Fixes #866
|
|
|
|
|
| |
We can simplify our previous standalone determination logic by merging content blocks again.
Fixes #854
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
| |
mmun-refactor-parser
Conflicts:
lib/handlebars/compiler/ast.js
spec/ast.js
src/handlebars.yy
|
|
|