jinja2cpp/Jinja2Cpp

Fix True/False/None value rendering (Python jinja2 parity)

tjsmith-meta opened this issue · 0 comments

Python jinja2 renders True/False/None values capitalized, whereas jinja2cpp renders True/False lowercased, and None renders as empty string.

Here's a template that demonstrates.

{% set foo = True %}
{% set bar = False %}
{% set baz = None %}
{{ foo }}
{{ bar }}
{{ baz }}

Python jinja2 output

True
False
None

jinja2cpp output

true
false

See this attachment for a quick pass at a fix. Not particularly confident that I haven't introduced a bug with this fix or incompletely fixed the problem, but figured I would share the quick pass I took at it.
jinja2cpp-literal-render-fix.txt