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
Justin Hileman
ab95bcd623
Merge branch 'feature/test-coverage' of github.com:bobthecow/mustache.php into feature/test-coverage
...
Conflicts:
Mustache.php
2010-04-30 20:14:47 -04:00
Justin Hileman
1532416306
Prefix Mustache reserved member variables with underscore to prevent namespace collisions with actual view values.
2010-04-30 20:12:37 -04:00
Justin Hileman
c53963f4af
Merge branch 'dev' into feature/test-coverage
...
Conflicts:
test/MustachePragmaTest.php
2010-04-30 11:18:50 -04:00
Justin Hileman
9a30573718
Fixed additional instance of 'only variables should be passed by reference' warning
2010-04-30 11:16:43 -04:00
Justin Hileman
eb94cb8179
Merge branch 'master' into dev
2010-04-30 11:14:49 -04:00
geoffreyd
d5de2d4af7
Fixed warning 'only variables should be passed by reference'
2010-04-30 23:12:39 +08:00
Justin Hileman
37cf2706a9
Allow whitespace in pragma tags.
2010-04-30 00:15:17 -04:00
Justin Hileman
a834ef7845
Added unescaped pragma.
2010-04-30 00:09:27 -04:00
Justin Hileman
20ace3e74c
Implemented implicit iterator pragma.
...
Fixed getPragmaOptions to return empty array if no options are set.
Fixed getVariable to return exact variable name matches before dot notation matches (i.e. the default iterator -- '.' -- will match the iterator and not try to do some crazy dot notation parsing.
2010-04-29 22:49:50 -04:00
Justin Hileman
f68335c845
Return false instead of null in hasPragma. Added documentation for pragma methods.
2010-04-29 21:39:50 -04:00