* Initialize missing fields in Lexer constructor
- Add tok_start and pos initialization to Lexer constructor
- Fix clang-tidy uninitialized fields warning
Signed-off-by: Huang Rui <vowstar@gmail.com>
* Fix argument type mismatch for load_file and load_json methods
- Use .string() method for path objects in benchmark file loading
- Apply same path conversion in test cases for consistency
Signed-off-by: Huang Rui <vowstar@gmail.com>
* Fix and cleanup mismatch error in windows test case
- Use .string() method for path objects in benchmark file loading
- Fix test case failure introduced in 65aa8a669d
Signed-off-by: Huang Rui <vowstar@gmail.com>
---------
Signed-off-by: Huang Rui <vowstar@gmail.com>
We need to resets current_block to a nullptr after parsing the template
in `parse_into`, otherwise, current_block will refer to local stack
space after we return from Parser::parse.
* Fixed headers and linter marks applied
Headers were wrong.
Applied some linter suggestions. There are still many left.
* CMake adjusted for single header
CMake can now install the single header.
Removed an unneeded header.
---------
Co-authored-by: Berscheid <1885260+pantor@users.noreply.github.com>
* add and document set_html_autoescape
* add render_to to Environment that accepts a string (and turns it into a Template)
* code style, update single include
* update ci
* revert macos-14 test
---------
Co-authored-by: pantor <lars.berscheid@online.de>
* Add `parse_expression` with one argument in preparation to fix#246.
* Fix issue #246: `func(n1 + n2, n3)` runs as if `func(n1, n2 + n3)`
* Simplify parser for an expression enclosed by parentheses.
* Fix the problem that the result has a decimal point when the round function, when the precision is 0.
* fix tests/test-functions.cpp:91 for round check
* add join function
* fix formatting to match single include
* add join test
* add join to documentation
* fix MSVC warning: signed/unsigned mismatch
Co-authored-by: Wim Leflere <wleflere@cochlear.com>