handlebars.java
handlebars.java copied to clipboard
Using backslashes inside a custom helper break compile template process.
I have a template to document PHP classes
I also created a concat helper in order to write: Package\ClassName in PHP.
The custom helper used for this is:
{{concat invokerPackage '\\' classname}}{{#description}}
I've been working with this using handlerbars 4.1.2 version with no problem, recently i updated to 4.2.1 and i got an error related to compile template process when this helper is used with backslashes.
Caused by: com.github.jknack.handlebars.HandlebarsException: /handlebars/php/api_doc.mustache:24:24: found: '/vendor/autoload.php'', expected: '}}'
require_once(__DIR__ . '/vendor/autoload.php');
at com.github.jknack.handlebars.internal.HbsErrorReporter.syntaxError(HbsErrorReporter.java:93)
at com.github.jknack.handlebars.internal.antlr.ProxyErrorListener.syntaxError(ProxyErrorListener.java:41)
at com.github.jknack.handlebars.internal.antlr.Parser.notifyErrorListeners(Parser.java:544)
at com.github.jknack.handlebars.internal.HbsErrorStrategy.reportInputMismatch(HbsErrorStrategy.java:186)
at com.github.jknack.handlebars.internal.antlr.DefaultErrorStrategy.reportError(DefaultErrorStrategy.java:139)
at com.github.jknack.handlebars.internal.HbsParser.var(HbsParser.java:1293)
at com.github.jknack.handlebars.internal.HbsParser.statement(HbsParser.java:333)
at com.github.jknack.handlebars.internal.HbsParser.body(HbsParser.java:231)
at com.github.jknack.handlebars.internal.HbsParser.template(HbsParser.java:174)
at com.github.jknack.handlebars.internal.HbsParserFactory$1.parse(HbsParserFactory.java:86)
at com.github.jknack.handlebars.cache.NullTemplateCache.get(NullTemplateCache.java:54)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:513)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:438)
at com.github.jknack.handlebars.Handlebars.compile(Handlebars.java:419)