summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* v2.0.0v2.0.0kpdecker2014-09-011-1/+1
|
* Cleanup var names slightlykpdecker2014-08-271-6/+6
|
* v2.0.0-beta.1v2.0.0-beta.1kpdecker2014-08-261-1/+1
|
* Render false literal as “false”kpdecker2014-08-252-2/+4
| | | Fixes #827
* Prune unused codekpdecker2014-08-255-8/+4
|
* Expose default compatibility wrapper for umd buildkpdecker2014-08-252-0/+4
|
* Add template isTop flagkpdecker2014-08-251-0/+1
|
* Fix compiler version tagkpdecker2014-08-251-1/+1
|
* Rev runtime versionkpdecker2014-08-251-2/+3
|
* Refactor content blocks to ignore lineskpdecker2014-08-251-57/+31
| | | | | We can simplify our previous standalone determination logic by merging content blocks again. Fixes #854
* Expose escapeExpression on the root objectkpdecker2014-08-251-0/+1
|
* Allow passing depths to _childkpdecker2014-08-252-6/+6
|
* Optimize compiler opcode callkpdecker2014-08-241-1/+3
|
* Additional test coverage cleanupkpdecker2014-08-232-8/+5
| | | Also fixes the template._child implementation which broke with the depthed work.
* Restore helperMissing for ambiguous statementskpdecker2014-08-231-1/+2
| | | | Fixes #318 (regression) Partial fix for #783
* Cleanup from code coverage reportkpdecker2014-08-233-16/+12
|
* Move strip processing into AST helper logickpdecker2014-08-233-53/+67
| | | | | 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
* Replace string value rather than add omit flagkpdecker2014-08-232-3/+4
|
* Add original value tracking to ContentNodekpdecker2014-08-231-1/+1
|
* Merge branch 'refactor-parser' of github.com:mmun/handlebars.js into ↵kpdecker2014-08-233-174/+177
|\ | | | | | | | | | | | | | | | | mmun-refactor-parser Conflicts: lib/handlebars/compiler/ast.js spec/ast.js src/handlebars.yy
| * Refactor blocks, programs and inversesMartin Muñoz2014-07-293-46/+56
| |
* | Optimize replaceStack for inline methodskpdecker2014-08-231-40/+24
| | | | | | Only use case was with inline input so most of this code was unnecessary.
* | Remove unnecessary stack variable from blockHelperkpdecker2014-08-231-4/+4
| |
* | Do not flush subexpressionskpdecker2014-08-231-7/+0
| | | | | | | | | | | | They are no longer duplicated with the new helper calling pattern and this also introduced stack corruption issues due to improper value lookups. Fixes #767 Fixes #768
* | Fix undefined handling for pathed lookupskpdecker2014-08-151-4/+3
| | | | | | | | Fixes #837
* | Strip dead code from javascript compilerkpdecker2014-08-151-9/+2
| |
* | Fix compat partial exec without datakpdecker2014-08-151-0/+2
| |
* | Make depthed lookup call non-literalkpdecker2014-08-151-1/+1
| | | | | | Prevents duplicate calls from being made.
* | Provide better error on unexpected templatekpdecker2014-08-151-0/+4
| | | | | | Fixes #806
* | Additional test coveragekpdecker2014-08-151-1/+1
| |
* | Remove nested function eval in blockHelperMissingkpdecker2014-08-141-2/+0
| | | | | | This only worked when a function returned a function, which was then evaluated. This seems like unexpected behavior so this was dropped.
* | Fix compiler program de-dupingkpdecker2014-08-141-9/+19
| |
* | Drop unused Compiler.disassemble methodkpdecker2014-08-141-24/+0
| |
* | Drop unused DECLARE opcodekpdecker2014-08-142-9/+1
| |
* | Drop unused registerHelper inverse parameterkpdecker2014-08-141-3/+2
| |
* | Increase test coverage a touchkpdecker2014-08-145-6/+9
| |
* | Implement partial recursive lookupkpdecker2014-08-142-7/+10
| |
* | Inherit compat flag for partialskpdecker2014-08-142-3/+6
| |
* | Implement recursive field lookup in compat modekpdecker2014-08-133-8/+32
| | | | | | | | | | | | Provides the mustache behavior of recursive lookup without the use of depthed paths. Note that this does incur a fairly dramatic performance penalty for depthed queries.
* | Avoid depth construction overhead for non-depthedkpdecker2014-08-131-1/+1
| |
* | Use depths array rather than passing array argskpdecker2014-08-132-33/+36
| | | | | | Approximately doubles the throughput performance of depthed templates and clears the way for doing recursive path lookups in pathed mode.
* | Create contextName helper for context lookupkpdecker2014-08-132-8/+12
| |
* | Render indent for standalone partialskpdecker2014-08-123-7/+20
| |
* | Drop omitted content tags from generated outputkpdecker2014-08-121-1/+3
| |
* | Flag standalone nodes in the ASTkpdecker2014-08-121-3/+138
| |
* | Track root status in ProgramNode constructorkpdecker2014-08-121-6/+6
| |
* | Remove unused JSCompiler.register methodkpdecker2014-08-111-5/+0
| |
* | Support inverse sections on the with helperDan Manges2014-07-161-0/+2
|/
* Do not lookup pathed helpers on the helper stackkpdecker2014-07-122-6/+5
| | | | Fixes #764
* Fix rendering of paths that resolve to zerokpdecker2014-07-121-1/+1
| | | | Fixes #820
* Use ID lookup for ambiguous helper evaluationkpdecker2014-07-072-1/+4
| | | Final change for #731
* Rework lookup null protector logickpdecker2014-07-062-64/+67
| | | | | | | - Move the lookup null protection out of `nameLookup` and into that contexts that are aware of the needs for falsy vs. not displayed values. - Optimize lookup for nested path operations Fixes #731
* Move lambda resolution to runtimekpdecker2014-07-062-4/+6
| | | This has a very positive impact on precompiled output size, particularly for known-helpers cases, and little or no impact on the throughput numbers.
* Move precompiler to safer locationkpdecker2014-07-051-9/+13
| | | | | Attempts to avoid some of the Node vs. ES6 confusion between the different styles within the application. Also adds some simple tests in addition to the integration test.
* Merge pull request #795 from jwietelmann/masterKevin Decker2014-07-051-0/+140
|\ | | | | Turn the precompile script into a wrapper around a module.
| * Stupid line endingJoel Wietelmann2014-05-101-1/+1
| |
| * Turning CLI precompiler into a wrapper around a module.Joel Wietelmann2014-05-101-0/+140
| |
* | Remove disassemble log statementkpdecker2014-06-281-3/+1
| | | | | | Fixes #772
* | Provide clear throw on {{#each}}kpdecker2014-05-271-3/+1
| | | | | | Fixes #773
* | v2.0.0-alpha.4v2.0.0-alpha.4kpdecker2014-05-191-1/+1
| |
* | Expose setup wrappers for compiled templateskpdecker2014-05-191-2/+8
| |
* | v2.0.0-alpha.3v2.0.0-alpha.3kpdecker2014-05-191-1/+1
| |
* | Merge pull request #797 from tomdale/full-helper-namesKevin Decker2014-05-191-1/+1
|\ \ | | | | | | Pass full helper ID to helperMissing when options are provided
| * | Pass full id to helperMissingTom Dale2014-05-131-1/+1
| |/
* | Ensure isHelper is coerced to a booleanMartin Muñoz2014-05-051-1/+1
|/
* Refactor template init logickpdecker2014-04-131-18/+22
|
* v2.0.0-alpha.2v2.0.0-alpha.2kpdecker2014-03-061-1/+1
|
* Fix evaluation of paths and subexprskpdecker2014-03-052-8/+9
| | | Fixes #743
* Merge pull request #749 from jenseng/option_subexpressions_fixKevin Decker2014-03-052-10/+9
|\ | | | | properly handle multiple subexpressions in the same hash, fixes #748
| * properly handle multiple subexpressions in the same hash, fixes #748Jon Jensen2014-02-202-10/+9
| | | | | | | | | | push all hash params before popping any so as to avoid the last stackN var stomping previous ones
* | fix bug in IE<=8 (no Array::map), closes #751Jon Jensen2014-03-041-9/+11
|/ | | | | | | looks like this broke in 2812fe27 also s/this.i/var i/, since the functions that needed it were removed in a1edab6ef
* vv2.0.0-alpha.1v2.0.0-alpha.1kpdecker2014-02-101-1/+1
|
* Update compiler revision infokpdecker2014-02-101-2/+3
|
* Add child accessor APIkpdecker2014-02-092-2/+14
|
* Add support for depthed resolution of data fieldskpdecker2014-02-094-8/+16
|
* Implement lookup helperkpdecker2014-02-092-1/+6
|
* Make raw blocks operate like blockskpdecker2014-02-091-3/+8
|
* raw block helpersJesse Ezell2014-02-091-0/+9
|
* Optimize buffer generate first and all edge caseskpdecker2014-02-091-26/+39
|
* Merge pull request #729 from wycats/precompile-literalKevin Decker2014-02-082-82/+92
|\ | | | | Convert template spec to object literal
| * Convert template spec to object literalkpdecker2014-02-062-82/+92
| | | | | | This allows for metadata to be associated with the template and a simplification of the template init logic.
* | Remove unnecessary conditionalkpdecker2014-02-061-3/+1
|/
* Optimize initData for root defined casekpdecker2014-01-181-2/+2
|
* Add partial and helper unregister APIskpdecker2014-01-181-0/+6
| | | Fixes #669
* Fix handler execution in nondata/nonid modekpdecker2014-01-171-4/+7
|
* Add contextPath tracking in builtin helperskpdecker2014-01-172-2/+36
|
* Add trackIds compiler flagkpdecker2014-01-173-4/+45
| | | | Allows helpers that care about where a particular field came from derive this data while maintaining backward compatibility with existing helpers.
* Fix missing parameters for pathed mustacheskpdecker2014-01-173-7/+9
| | | Fixes #658
* Allow decimal number valueskpdecker2014-01-173-8/+8
| | | Fixes #472
* Allow implicit context iteration with eachkpdecker2014-01-171-0/+6
| | | Fixes #671
* Implement partial hash evaluationkpdecker2014-01-173-5/+15
|
* Add partial hash parser supportkpdecker2014-01-172-2/+8
|
* Improve usefulness of extend util, properly use namespace property, update ↵Blake Embrey2014-01-164-29/+41
| | | | setup options to use a hash helper.
* Merge pull request #634 from wycats/name-optionKevin Decker2014-01-153-22/+19
|\ | | | | It would be great to have the helper name passed to `blockHelperMissing`
| * Cleanup now unused code in jscompilerkpdecker2014-01-061-5/+4
| |
| * Include name option for all helper callskpdecker2014-01-063-19/+17
| | | | | | | | | | | | | | | | All helper calls will have access to `options.name` which is the first id value of the mustache operation. As part of this the helperMissing call has been simplified to remove the indexed name in order to optimize the call. This is a breaking change. Fixes #634
* | Expose the initial context via @rootkpdecker2014-01-152-2/+9
|/
* Refactor out pushParams methodkpdecker2014-01-061-34/+19
| | | Simplifies hash and param push logic
* Track stringParams mode in local state varskpdecker2014-01-062-8/+10
|
* Fix DATA value in stringParams modekpdecker2014-01-061-0/+1
| | | | Fixes #699