aboutsummaryrefslogtreecommitdiffstats
path: root/askama_shared/src/parser.rs (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Upgrade to nom 6Libravatar Dirkjan Ochtman2020-11-021-36/+37
|
* Add support for more whitespace positions within expressions:Libravatar Ciprian Dorin Craciun2020-06-301-11/+20
| | | | | | | | | | | | * in function calls: `x ( 1 , 2 )`; * in path elements: `module :: element`; * in attributes: `x . y . z`; * in filter arguments: `x| filter ( 1 , 2 )`; * before unary operators: `! false` and `- 42`; * in grouped expressions: `( 1 + 2 )`; * also allow more than a single whitespace; Change some tests to include whitespaces in various positions.
* Reorder parser type definitionsLibravatar Dirkjan Ochtman2020-06-031-46/+46
|
* Revert whitespace matching to old macro behaviorLibravatar Dirkjan Ochtman2020-06-031-6/+8
|
* Strip 0 or more instead of 1 whitespace character (fixes #337)Libravatar Dirkjan Ochtman2020-06-031-2/+2
|
* Cast empty arrays to slice to get around clippyLibravatar Dirkjan Ochtman2020-05-211-3/+2
|
* Allow clippy reversed-empty-ranges for nowLibravatar Dirkjan Ochtman2020-05-211-0/+1
| | | | Pending https://github.com/rust-lang/rust-clippy/issues/5628.
* Support function callsLibravatar Nathan Lapel2020-03-181-9/+57
|
* Move parser into askama_sharedLibravatar Dirkjan Ochtman2020-01-291-0/+1093
|
* Isolate proc-macro dependency to the proc macroLibravatar David Tolnay2018-04-121-694/+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.
* Handle a lack of whitespace after match block (fixes #76)Libravatar Dirkjan Ochtman2018-04-121-4/+5
|
* Properly disable rustfmt in parser moduleLibravatar Dirkjan Ochtman2017-12-251-2/+1
|
* Disabling rustfmt locally doesn't work in stable RustLibravatar Dirkjan Ochtman2017-11-211-2/+2
|
* Don't restyle code in parser moduleLibravatar Dirkjan Ochtman2017-11-211-0/+4
|
* Support matching custom enumsLibravatar Anthony Nowell2017-11-021-2/+44
|
* support literals in match armsLibravatar Anthony Nowell2017-11-021-7/+47
|
* support else in match blockLibravatar Anthony Nowell2017-11-021-0/+15
|
* implement basic match functionalityLibravatar Anthony Nowell2017-11-021-0/+54
|
* Make empty string literals workLibravatar Dirkjan Ochtman2017-10-221-1/+1
|
* Tighten up parser code for path expressionsLibravatar Dirkjan Ochtman2017-10-201-4/+2
|
* Add support for array literals (fixes #59)Libravatar Dirkjan Ochtman2017-10-201-0/+18
|
* Add scope when importing macrosLibravatar Lars Erik Rosengren2017-10-151-4/+11
|
* Handle path expressions (fixes #56)Libravatar Dirkjan Ochtman2017-10-041-0/+18
|
* Add support for importing template files with macros (#51)Libravatar larros2017-09-261-0/+13
| | | | * Fix review comments for macro imports
* Add support for tuple indexing in templatesLibravatar Lars Erik Rosengren2017-09-101-3/+7
|
* Code cleanups as suggested by ClippyLibravatar Dirkjan Ochtman2017-09-061-4/+4
|
* Stop mutating parsed AST for code generationLibravatar Dirkjan Ochtman2017-09-051-1/+0
|
* Refactor handling of macrosLibravatar Dirkjan Ochtman2017-09-051-5/+15
|
* Clean up and tighten faster version of expr_prec_layer macroLibravatar Dirkjan Ochtman2017-09-041-15/+10
|
* Changed implementation of precedence rulesLibravatar Lars Erik Rosengren2017-09-031-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.
* Move most of the code into new askama_shared crateLibravatar Dirkjan Ochtman2017-08-271-0/+471
This makes it possible to share code between askama and askama_derive.