aboutsummaryrefslogtreecommitdiffstats
path: root/askama_shared/src/generator.rs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Added support for optional escaper for escape filter (resolves #556)Libravatar vallentin2021-11-191-2/+36
|
* Implement `for … in … if …`Libravatar René Kijewski2021-11-111-29/+27
|
* Implement for-elseLibravatar René Kijewski2021-11-111-17/+26
| | | | | | | | | | | | | This PR implements for-else statements like in Jinja. They make it easy to print an alternative message if the loop iterator was empty. E.g. ```rs {% for result in result %} <li>{{ result }}</li> {% else %} <li><em>no results</em></li> {% endfor %} ```
* Prepare for actix-web v4 (#553)Libravatar Sergey Pashinin2021-11-111-4/+2
|
* Implement {{loop.cycle(…)}} similar to JinjaLibravatar René Kijewski2021-11-111-7/+30
|
* Fix support for raw method identifiersLibravatar Kelly Thomas Kline2021-10-131-1/+1
|
* Add {% break %} and {% continue %}Libravatar René Kijewski2021-08-301-0/+10
| | | | | This PR adds `{% break %}` and `{% continue %}` statements to break out of a loop, or continue with the next element of the iterator.
* Parse boolean literals in assignment targetsLibravatar René Kijewski2021-08-251-0/+6
| | | | | | | | 268d825 introduced a regression that made matching against boolean literals impossible. E.g. "true" was interpreted as the variable "r#true". This PR fixes the problem. The bug was reported by @Restioson in issue #531.
* Use "target()" to parse "when" blockLibravatar René Kijewski2021-07-301-102/+42
| | | | | | | | | | | | `target()` as used in parsing "let" and "if let" implements parsing nested tuples and structs. But it does not implement parsing literals. The functions `match_variant()` and `with_parameters()` as used in parsing "when" blocks do not implement parsing nested structs, but it implements parsing literals. This PR combines `match_variant()` and `with_parameters()` into `target()`, so that all `{%when%}` support nested structs, too.
* Implement destructoring of structsLibravatar René Kijewski2021-07-051-2/+17
| | | | | This PR implements the destructoring of structs on the lhs of "let" and "for" statements.
* Parse nested tuples in "let" statement lhsLibravatar René Kijewski2021-07-051-3/+3
|
* Reduce code duplication for writing targetsLibravatar René Kijewski2021-07-051-22/+9
| | | | | This change also fixes a bug in the loop generator, which failed for shadowed variables.
* Move logic where target shadows or declares a variable into methodLibravatar René Kijewski2021-07-051-23/+33
|
* Remove needless deref, only to ref it a few lines downLibravatar René Kijewski2021-07-051-4/+4
|
* Remove duplicated code in generatorLibravatar René Kijewski2021-07-051-17/+1
|
* Prepare generator::visit_target() for nested targetsLibravatar René Kijewski2021-07-051-4/+2
| | | | | | | | By now only non-nested tuples are accepted by the parser, but this will change. This change makes visit_target() call itself for items in a tuple. So enable the function to call itself, I needed to fix the lifetime annotation, because the references inside a Target instance may outlife a reference to instance itself.
* Stop eliding lifetimes in pathsLibravatar Dirkjan Ochtman2021-07-011-49/+69
|
* Implement "if let" statementLibravatar René Kijewski2021-07-011-12/+27
|
* Use "if let Some(_)" instead of matchLibravatar René Kijewski2021-07-011-21/+18
|
* Move visit_match_params into its own methodLibravatar René Kijewski2021-07-011-38/+42
|
* Fixed loop generator when accessing field (fixes 494)Libravatar vallentin2021-06-231-0/+6
|
* Fix code generation for macro calls that store args in variables.Libravatar Ryan Kelly2021-06-221-1/+4
|
* Support rocket 0.5.0-rc.1 based on @flo-l's PR (#495)Libravatar Shritesh Bhattarai2021-06-151-4/+2
| | | See #412 for earlier iteration.
* Fix needless borrowingLibravatar Dirkjan Ochtman2021-06-141-5/+5
|
* Fixed not found in scope errorLibravatar vallentin2021-04-291-1/+1
|
* Use raw identifiers for identifiers which collide with Rust keywords (#476)Libravatar SciStarterOwner2021-04-211-4/+84
| | | Co-authored-by: Daniel Arbuckle <djarb@highenergymagic.org>
* Eliminate common tails from branchesLibravatar Dirkjan Ochtman2021-04-131-4/+2
|
* askama_tide: suppress clippy::from-over-into lintLibravatar Dirkjan Ochtman2021-03-301-0/+2
|
* Use mem::take() where applicableLibravatar Dirkjan Ochtman2021-03-301-2/+2
|
* Refactored getting path extensionLibravatar vallentin2021-03-101-35/+8
|
* Reworked constants to be parsed as pathsLibravatar vallentin2021-02-231-5/+2
|
* Rename askama_actix trait method as suggested by clippyLibravatar Dirkjan Ochtman2021-02-151-2/+2
| | | | | By bumping the dependency versions for askama and askama_shared, this should be safe.
* Fix formatting for rust 1.50.0Libravatar Dirkjan Ochtman2021-02-151-4/+6
|
* Bring Ws type name in line with API guidelinesLibravatar Dirkjan Ochtman2021-02-011-18/+18
|
* Fixed constants (fixes #291)Libravatar vallentin2021-01-131-2/+5
|
* Removed implicit borrowing of literals, calls, and more (fixes #404)Libravatar vallentin2021-01-051-3/+10
|
* Added tojson aliasLibravatar vallentin2020-12-301-1/+5
|
* Fixed yaml filter generationLibravatar vallentin2020-12-291-1/+1
|
* Refactored into filters constantLibravatar vallentin2020-12-291-8/+6
|
* Added error to hint enabling serde featuresLibravatar vallentin2020-12-291-0/+9
|
* Added support for redefining variables (fixes #329)Libravatar vallentin2020-12-251-5/+34
|
* Improved implicit borrowing and changed to resolve Askama variables at ↵Libravatar vallentin2020-12-211-49/+127
| | | | compile time
* Improved template loop generation (fixes #107, #333)Libravatar vallentin2020-12-161-1/+19
|
* Merge pull request #400 from djc/localLibravatar Dirkjan Ochtman2020-12-151-2/+2
|\ | | | | Sync local repo with GitHub
| * Adapt to changed mendes APILibravatar Dirkjan Ochtman2020-11-191-2/+2
| |
* | Fixed whitespace issue when generating match (#399)Libravatar Christian Vallentin2020-12-121-15/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | * Fixed #397 * Updated parser to ignore whitespace between match and when * Updated test cases * Updated Python script to generate match ws tests * Added match ws tests * Resolved rustfmt lint
* | Fixed whitespace issue when generating if statement (#394)Libravatar Christian Vallentin2020-12-031-5/+6
| | | | | | * Fixed #377
* | Improved if statement generation to avoid issues with implicit borrows (#392)Libravatar Christian Vallentin2020-12-011-0/+7
| | | | | | | | | | | | | | * Changed to automatically coerce to bool * Added new test case * Updated test case to include else if
* | Fixed implicit borrow of expressions (#390)Libravatar Christian Vallentin2020-12-011-2/+3
|/
* Correctly scope macro argument name bindings (fixes #382)Libravatar Dirkjan Ochtman2020-11-131-3/+12
|