aboutsummaryrefslogtreecommitdiffstats
path: root/askama_derive/src/parser.rs (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-12-08Upgrade to 2018 editionLibravatar Dirkjan Ochtman1-3/+3
2018-10-07Add Rust macro support at templatesLibravatar bott1-1/+12
2018-10-05Fix deprecated tag s! in favor of tag!Libravatar bott1-83/+83
2018-10-05Fix fmt at parser.rsLibravatar bott1-28/+42
2018-10-05Add changing delimiters supportLibravatar bott1-68/+106
2018-07-02Clean up according to clippy suggestionsLibravatar Dirkjan Ochtman1-1/+1
2018-06-23Add support for range operators (see #95)Libravatar Dirkjan Ochtman1-1/+21
2018-06-23Add support for Index operation (see #95)Libravatar Dirkjan Ochtman1-1/+16
2018-06-22Disallow user-defined macros named 'super'Libravatar Dirkjan Ochtman1-9/+14
2018-06-21Clean up clippy suggestionsLibravatar Dirkjan Ochtman1-1/+1
2018-06-15Port parser to nom 4Libravatar Dirkjan Ochtman1-67/+79
2018-05-14Fix copy/paste error in whitespace handlingLibravatar Dirkjan Ochtman1-2/+2
2018-04-27Add support for unary operators (fixes #83)Libravatar Dirkjan Ochtman1-1/+11
2018-04-17Properly handle whitespace around comments (fixes #79)Libravatar Dirkjan Ochtman1-3/+4
2018-04-12Isolate proc-macro dependency to the proc macroLibravatar David Tolnay1-0/+0
The dependency of askama on askama_shared on syn on libproc_macro used to mean libproc_macro would be dynamically linked into any crate using askama. We want only askama_derive to have a runtime dependency on proc macro. This commit moves all proc macro code from askama_shared into askama_derive so that the askama crate no longer dynamically links libproc_macro.
2018-04-12Handle a lack of whitespace after match block (fixes #76)Libravatar Dirkjan Ochtman1-4/+5
2017-12-25Properly disable rustfmt in parser moduleLibravatar Dirkjan Ochtman1-2/+1
2017-11-21Disabling rustfmt locally doesn't work in stable RustLibravatar Dirkjan Ochtman1-2/+2
2017-11-21Don't restyle code in parser moduleLibravatar Dirkjan Ochtman1-0/+4
2017-11-02Support matching custom enumsLibravatar Anthony Nowell1-2/+44
2017-11-02support literals in match armsLibravatar Anthony Nowell1-7/+47
2017-11-02support else in match blockLibravatar Anthony Nowell1-0/+15
2017-11-02implement basic match functionalityLibravatar Anthony Nowell1-0/+54
2017-10-22Make empty string literals workLibravatar Dirkjan Ochtman1-1/+1
2017-10-20Tighten up parser code for path expressionsLibravatar Dirkjan Ochtman1-4/+2
2017-10-20Add support for array literals (fixes #59)Libravatar Dirkjan Ochtman1-0/+18
2017-10-15Add scope when importing macrosLibravatar Lars Erik Rosengren1-4/+11
2017-10-04Handle path expressions (fixes #56)Libravatar Dirkjan Ochtman1-0/+18
2017-09-26Add support for importing template files with macros (#51)Libravatar larros1-0/+13
* Fix review comments for macro imports
2017-09-10Add support for tuple indexing in templatesLibravatar Lars Erik Rosengren1-3/+7
2017-09-06Code cleanups as suggested by ClippyLibravatar Dirkjan Ochtman1-4/+4
2017-09-05Stop mutating parsed AST for code generationLibravatar Dirkjan Ochtman1-1/+0
2017-09-05Refactor handling of macrosLibravatar Dirkjan Ochtman1-5/+15
2017-09-04Clean up and tighten faster version of expr_prec_layer macroLibravatar Dirkjan Ochtman1-15/+10
2017-09-03Changed implementation of precedence rulesLibravatar Lars Erik Rosengren1-6/+12
This implementation resolves djc/askama#44 by changing the precedence implementation. The previous solution was very slow because it had to try to parse all combinations of precedence layers leading to 2^9 iterations for each expr_any. This is solved by reusing the left operand instead of reparsing it when the operator isn't found. This implementation also solves another related issue that expressions with multiple operators couldn't be parsed, for example {{1 * 2 * 3}}. This is handled by using expr_any for the right operand instead of only using higher level precedence layers.
2017-08-27Move most of the code into new askama_shared crateLibravatar Dirkjan Ochtman1-0/+0
This makes it possible to share code between askama and askama_derive.
2017-08-24Allow {% block name %} {% endblock name %}Libravatar Bastien Orivel1-0/+1
This makes converting an app from tera to askama easier.
2017-08-22Add support for calling macrosLibravatar Dirkjan Ochtman1-13/+24
2017-08-22Refactor parser handling of argumentsLibravatar Dirkjan Ochtman1-21/+19
2017-08-22Implement support for macro definition handlingLibravatar Dirkjan Ochtman1-1/+43
2017-08-22Rename method call internals for clarityLibravatar Dirkjan Ochtman1-2/+2
2017-08-16Allow separation of variable declaration and defintionLibravatar Dirkjan Ochtman1-3/+11
2017-08-14Add support for simple variable definition statementsLibravatar Dirkjan Ochtman1-0/+12
2017-08-06Expand include node to template source during code generationLibravatar Dirkjan Ochtman1-4/+2
2017-08-06Use one way of finding templates on the pathLibravatar Dirkjan Ochtman1-1/+2
2017-08-06Merge handling of trailing newline into get_template_source()Libravatar Dirkjan Ochtman1-10/+4
2017-08-04Add test for panic on invalid blocks (see #27)Libravatar Dirkjan Ochtman1-0/+5
2017-08-04Let parse() panic if template is not parsed completely (fixes #27)Libravatar Dirkjan Ochtman1-1/+8
2017-08-04Handle parsing for blocks in one placeLibravatar Dirkjan Ochtman1-15/+14
2017-08-04Add support for include blocks (see #25)Libravatar Dirkjan Ochtman1-0/+22