aboutsummaryrefslogtreecommitdiffstats
path: root/askama_derive/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add MSRV checking in CILibravatar Dirkjan Ochtman2023-09-291-7/+2
| | | | Bump MSRV to 1.65 for the use of let .. else.
* parser: import `parser::{Expr, Node}`Libravatar René Kijewski2023-08-012-4/+4
|
* parser: `node::Loop` is much bigger than the other variantsLibravatar René Kijewski2023-08-011-8/+4
|
* parser: add type for `Node::Comment`Libravatar René Kijewski2023-08-011-5/+5
|
* parser: remove re-exports `parser::{node,expr}::*`Libravatar René Kijewski2023-08-013-5/+10
|
* parser: add type for `Node::Extends`Libravatar René Kijewski2023-08-012-3/+3
|
* parser: add type for `Node::Include`Libravatar René Kijewski2023-08-011-8/+7
|
* parser: rename `Node::Cond` into `If` and add typeLibravatar René Kijewski2023-08-012-10/+9
|
* parser: add type for `Node::Let`Libravatar René Kijewski2023-08-011-31/+19
|
* parser: add type for `Node::Raw`Libravatar René Kijewski2023-08-011-4/+4
|
* parser: add type for `Node::Lit`Libravatar René Kijewski2023-08-011-6/+7
|
* parser: add type for `Node::BlockDef`Libravatar René Kijewski2023-08-012-34/+13
|
* parser: add type for `Node::Match`Libravatar René Kijewski2023-08-012-9/+13
|
* parser: add type for `Node::Call`Libravatar René Kijewski2023-08-011-7/+10
|
* parser: add type for `Node::Import`Libravatar René Kijewski2023-08-012-8/+8
|
* parser: let `Macro` know its nameLibravatar René Kijewski2023-08-012-4/+4
|
* parser: rename block to nodesLibravatar Dirkjan Ochtman2023-07-312-6/+8
|
* parser: define a struct for MatchLibravatar Dirkjan Ochtman2023-07-312-6/+5
|
* parser: define a struct for CondLibravatar Dirkjan Ochtman2023-07-312-6/+6
|
* Extract askama_parser crateLibravatar Dirkjan Ochtman2023-07-319-2058/+6
|
* derive: move whitespace conversion into config moduleLibravatar Dirkjan Ochtman2023-07-312-12/+11
|
* derive: move Parsed into parser moduleLibravatar Dirkjan Ochtman2023-07-312-36/+35
|
* derive: move generator-specific methods out of ExprLibravatar Dirkjan Ochtman2023-07-312-73/+71
|
* derive: define separate ParseError typeLibravatar Dirkjan Ochtman2023-07-314-9/+32
|
* derive: move Syntax into parser moduleLibravatar Dirkjan Ochtman2023-07-315-40/+38
|
* Fix Rust macro invocations not accepting a path (#837)Libravatar Matthew Taylor2023-07-243-17/+72
|
* Cache include AST to reduce parsing overheadLibravatar Dirkjan Ochtman2023-06-281-23/+16
|
* Inline child() method to avoid borrowing all fieldsLibravatar Dirkjan Ochtman2023-06-281-27/+23
|
* Avoid reparsing included templates if possibleLibravatar Dirkjan Ochtman2023-06-281-4/+23
|
* Parse templates onceLibravatar Dirkjan Ochtman2023-06-283-18/+45
|
* Allow macros to be defined and called without argumentsLibravatar mataha2023-06-121-2/+5
| | | | | | | | | | This commit introduces a shorthand for defining and calling macros when using them as a reusable substitute for variables assigned complex values (e.g. string literals with or without newline escapes). The use-case is formatting - from my experience it's easier to visually parse a `macro` `endmacro` block than a multiline variable assignment. Signed-off-by: mataha <mataha@users.noreply.github.com>
* Allow delimiters with arbitrary lengthLibravatar René Kijewski2023-05-311-16/+94
|
* Update to rocket 0.5-rc.3Libravatar Vypo Mouse2023-05-191-6/+15
|
* Extract literal from group expressions in attributesLibravatar Dirkjan Ochtman2023-03-211-0/+6
|
* Upgrade to syn 2Libravatar Dirkjan Ochtman2023-03-201-27/+26
|
* Add tests for whitespace argument in template derive proc-macroLibravatar Guillaume Gomez2023-03-131-0/+30
|
* Add whitespace argument in template derive proc-macroLibravatar Guillaume Gomez2023-03-132-17/+39
|
* Fix handling of trailing whitespace charactersLibravatar Guillaume Gomez2023-03-092-4/+19
|
* Propogate size_hint from sub-blocks (#788)Libravatar Andrew Dona-Couch -- GitHub drop ICE2023-03-061-4/+4
| | | Closes #786
* exchange hyper features From<Template> for hyper::Body with TryFromLibravatar Rudi Floren2023-03-031-7/+5
| | | | | | | | | The previous implementation hid the error returned by render, which made it impossible for callers to react to rendering errors. While having a simple way to call into would be nice, there is not way to have both implementations without adding any manual specialization. Thus, the From impl is replaced by the TryFrom impl.
* Fix typosLibravatar René Kijewski2023-02-242-13/+13
|
* Revert "derive: Make Config `'static`"Libravatar René Kijewski2023-02-216-69/+74
|
* Replace `toml_edit` with `basic-toml`Libravatar René Kijewski2023-02-211-1/+1
|
* Add impl From<{Template}> for hyper::Body deriveLibravatar Rudi Floren2023-02-131-1/+23
| | | | | with-hyper now derives an impl allowing Templates to be passed to functions with trait bounds for Into<hyper::Body>.
* derive: refactor parserLibravatar René Kijewski2023-01-305-1940/+1999
| | | | | | | | | | | `parser.rs` was a single file containing almost 2000 lines. This PR split the file into multiple, smaller files. `Expr`, `Node`, and `Target` each get an own file. Each struct gets a `parse()` method that return `Result<Self>`, and every other detail is private to the file. This PR should make this essential part of Askama more easy to understand, and make future modifications easier.
* Extends expects a string and nothing elseLibravatar René Kijewski2023-01-303-5/+5
|
* Use `toml_edit` instead of `toml`Libravatar René Kijewski2023-01-301-1/+2
| | | | | Since version 0.6, `toml` is a wrapper around `toml_edit`, and the more basic library already meets our needs.
* derive: Make Config `'static`Libravatar René Kijewski2023-01-304-71/+67
| | | | | | | The configuration is made `'static`, because `toml` and `toml_edit` both needs to implement serde's `DeserializeOwned` by now. We allocate the strings once per template, so it is very unlikely that this change will have any measurable impact, neither in compile time nor RAM usage.
* Apply clippy suggestions for 1.67 (#769)Libravatar Dirkjan Ochtman2023-01-304-42/+41
|
* Fail to parse if keyword is not longest identLibravatar René Kijewski2022-11-091-31/+56
| | | | | | | | | | | This PR makes e.g. `{% leta = b %}` a parsing error. To the reader it would appear that `leta` should be a meaningful expression in Askama, which it is not. Before this PR, `leta` was tokenized as `let` + `a`. This PR makes the parser try to find the longest identifier at a parsing positions and only compare the outcome against the expected keyword. This is potentially a breaking change, because code that should always have been invalid will now fail to compile, when it was accepted before.