Justin Hileman
392b0a3c57
Check whether context item is an array before using it.
...
Fixes #24 . This will be necessary once implicit iterators make it into production. It will also save people from themselves if they put an iterable array where Mustache expects to find a context.
2011-03-01 11:41:13 -05:00
Luke Morton
7d239849da
Fixes #25
2010-12-14 16:50:23 -05:00
Justin Hileman
64b5cd0964
Cleanup.
...
Make RegEx variable capitalization consistent. Add docblocks for prepareFooRegEx functions.
2010-12-08 08:34:27 -05:00
Justin Hileman
c5bf83f9a9
Move class constants to their logical places.
2010-12-08 08:28:51 -05:00
Justin Hileman
289cd023d4
Optimize dot notation check
...
Don't try to traverse dot notation unless there's a dot in the variable name.
2010-11-26 15:45:57 -05:00
Justin Hileman
b33b1a7bf2
Remove an extra trim();
2010-11-26 15:38:45 -05:00
Justin Hileman
c1bac31884
Merge branch 'dev' into feature/whitespace-overhaul
2010-11-26 14:33:23 -05:00
Justin Hileman
fe91be1fb1
Pre-escape tag type constants (saves us from doing it each time the regex strings are prepared)
2010-11-26 14:07:10 -05:00
Justin Hileman
225a32d5bf
Updating _renderTag logic around leftover section tags.
...
Exceptions are now thrown by _renderSections, so anything left over by the time _renderTag executes should just be discarded.
2010-11-26 14:05:20 -05:00
Justin Hileman
2b8e2f6e84
Capture whitespace before tags, prefix it to partials.
2010-11-24 08:11:09 -05:00
Justin Hileman
3e6b8102b7
Massive overhaul of Mustache.php's whitespace handling.
...
Move regex preparation into methods, use named subpatterns so the regex makes more sense. Fix the logic around eating newlines adjacent to tags. Update tests to reflect the changes.
2010-11-24 07:45:24 -05:00
Justin Hileman
38accdaf89
More correct sections implementation.
...
Allows nested sections of the same name, throws exceptions on incorrectly nested sections, e.g.:
{{#foo}}{{#bar}}{{/foo}}{{/bar}}
Add a set of tests for incorrectly nested sections.
2010-11-24 03:16:18 -05:00
Justin Hileman
35c725089b
Revert "Merge branch 'luciferous-master' into dev"
...
This reverts commit 9202a37cf5 , reversing
changes made to 54b5800d42 .
Using `is_callable` is problematic as the `__call` magic method interferes with
context all over the place. See http://hile.mn/buBS11 and http://hile.mn/9vy1S6
2010-10-30 18:06:39 -04:00
Justin Hileman
9202a37cf5
Merge branch 'luciferous-master' into dev
2010-10-30 17:16:33 -04:00
Justin Hileman
54b5800d42
Merge branch 'ThePixelDeveloper-master' into dev
2010-10-30 17:13:37 -04:00
Justin Hileman
f2d77ad695
Whitespace
2010-10-30 17:13:27 -04:00
Justin Hileman
f3cb0877ff
Add support for 'less-than' partial notation.
2010-10-30 16:53:14 -04:00
Neuman Vong
65770a03f6
Use is_callable instead of method_exists
...
To use objects implementing __call().
Closes #18 .
2010-10-29 14:07:43 -07:00
Mathew Davies
e8f99bb04e
Use array_key_exists instead of isset for checking array values.
2010-10-02 21:05:37 +01:00
Jeremy Bush
758027bd91
Fixing Issue #11
2010-08-17 15:24:30 -04:00
Justin Hileman
eb01f3052c
Merge branch 'feature/test-coverage' into dev
2010-08-15 06:56:02 -04:00
Justin Hileman
54d91b667b
Adjust _renderTag so xdebug relizes that it actually has full test coverage. This commit marks 100% test coverage of Mustache.php.
2010-08-15 06:33:55 -04:00
Justin Hileman
de968a42b4
Initialize local pragmas with empty array.
2010-08-15 06:30:15 -04:00
Matt Button
196f334621
Re-ordering mustache variable precedence
2010-08-13 13:22:35 -04:00
Justin Hileman
ec562fea09
Support for newlines inside mustache tags.
2010-08-03 04:58:15 -04:00
Justin Hileman
c1cdea7bc5
Added documentation for IMPLICIT-ITERATOR and DOT-NOTATION pragmas.
2010-07-11 23:17:14 -04:00
Justin Hileman
6cfd2b4be8
Merge branch 'dev' into feature/implicit-iterator
2010-07-11 22:35:38 -04:00
Jeremy Bush
c45550e9e5
Fixing #3 , Transversable objects should be iterated over.
2010-07-05 23:58:35 -04:00
Justin Hileman
0256d03b5f
Merge branch 'dev' into feature/implicit-iterator
...
Conflicts:
Mustache.php
2010-07-05 15:55:00 -04:00
Justin Hileman
b300b31752
prepared regex should escape regex delimiter as well.
2010-06-11 16:36:40 -04:00
Justin Hileman
a978b6ba45
Fix for resetting otag/ctag to initial values between successive renders of same template.
2010-06-11 16:29:59 -04:00
Justin Hileman
12096e0b8c
Cleaned up regex string preparation.
2010-06-11 16:24:46 -04:00
Justin Hileman
97e6911935
Stopped passing context by reference to _findVariableInContext. Updated documentation.
2010-05-25 13:51:49 -04:00
Justin Hileman
fd3dc292a3
Merge branch 'feature/fix-partials' into dev
2010-05-24 10:35:00 -04:00
Justin Hileman
7d4c68f8ad
Merge branch 'dev' into feature/implicit-iterator
...
Conflicts:
Mustache.php
2010-05-23 00:15:16 -04:00
Justin Hileman
11c2b04d8e
fixed typo in comment
2010-05-22 22:44:28 -04:00
Justin Hileman
eb1a896569
Fixed root context swap in clone (was checking context[0], should have checked last element in context stack).
2010-05-22 22:42:54 -04:00
Justin Hileman
0893a7d39d
using array keys instead of iteration over context for creating subcontext arrays. this fixes incorrect context stacks in recursive partials.
2010-05-22 20:40:01 -04:00
Justin Hileman
95abf1d52b
Merge branch 'dev' into feature/fix-partials
...
Conflicts:
Mustache.php
2010-05-22 20:30:52 -04:00
Justin Hileman
0fd759d8f7
Merge branch 'feature/test-coverage' into dev
2010-05-22 20:27:53 -04:00
Justin Hileman
c79501b4ad
Pragmas don't need to be re-rendered for all sub-templates (i.e. sections). Moving call to _renderPragmas into main render() method.
2010-05-22 20:27:31 -04:00
Justin Hileman
7f5f7a73fc
Stop passing context arrays around like a madman.
2010-05-22 19:24:49 -04:00
Justin Hileman
eeb5b245d1
Possible fix for #1 - ability to use partials with an arbitrary (non-Mustache) view class.
2010-05-22 18:34:24 -04:00
Justin Hileman
9f31a821e1
Merge branch 'feature/test-coverage' into dev
2010-05-18 10:28:14 -04:00
Justin Hileman
9e803ed033
Fix for stripping leading/trailing whitespace from partial names,
...
per http://github.com/janl/mustache.js/issues/issue/34/#comment_244396
2010-05-18 10:28:01 -04:00
Justin Hileman
2c3984a604
Fix for #1 - incorrect context for partials.
...
Partials now receive a flattened version of the parent context, including a cloned Mustache instance (if the root context is a Mustache instance). There may be issues with cloning, for example: if a pragma is enabled in the parent template, partials might also inherit the pragma.
Added (basic) test case for partials.
2010-05-16 15:04:22 -04:00
Justin Hileman
ca8e96de97
Minor documentation update
2010-04-30 21:12:13 -04:00
Justin Hileman
c6061baf49
Changed protected _render function to _renderTemplate to avoid ambiguity.
2010-04-30 20:36:18 -04:00
Justin Hileman
7304344c51
Changing all protected functions to start with underscore, freeing up namespace for use in Mustache view classes.
2010-04-30 20:34:31 -04:00
Justin Hileman
5a1143efce
Added _throwsException() check and refactored exception checks.
2010-04-30 20:23:25 -04:00