Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2024-01-18 | Yield error on deep AST recursion | Dirkjan Ochtman | 2 | -3/+15 | |
2024-01-17 | Improve performance of `find_used_templates` | max | 1 | -1/+2 | |
Signed-off-by: max <gmx.sht@gmail.com> | |||||
2024-01-11 | parser: add test for target recursion overflow | Dirkjan Ochtman | 1 | -0/+6 | |
2024-01-11 | parser: limit target recursion | Dirkjan Ochtman | 1 | -14/+25 | |
2023-12-07 | Allow trailing comma in macro definition and call | Guillaume Gomez | 2 | -2/+2 | |
2023-12-07 | Undo an accidental deletion of `#[derive(Debug)]` | max | 1 | -0/+1 | |
Signed-off-by: max <gmx.sht@gmail.com> | |||||
2023-12-07 | Added testing for reserved variable names | max | 2 | -5/+20 | |
Signed-off-by: max <gmx.sht@gmail.com> | |||||
2023-11-28 | Allow to pass named arguments to macro calls | Guillaume Gomez | 2 | -6/+75 | |
2023-11-22 | Add better support for rust-like number literals (#908) | PizzasBear | 1 | -5/+65 | |
Signed-off-by: max <gmx.sht@gmail.com> | |||||
2023-11-22 | Enhance match to include multiple targets (#911) | PizzasBear | 1 | -0/+13 | |
Signed-off-by: max <gmx.sht@gmail.com> | |||||
2023-11-13 | Derive Clone for Expr and Target | Andrew Dona-Couch | 2 | -2/+2 | |
2023-10-25 | Create a type alias for all `IResult` to simplify code reading | Guillaume Gomez | 3 | -108/+90 | |
2023-10-25 | Improve error for `elif` keyword | Guillaume Gomez | 1 | -1/+9 | |
2023-10-25 | Improve error for invalid name used in `endmacro` | Guillaume Gomez | 1 | -1/+7 | |
2023-10-25 | Improve error for invalid name used in `endblock` | Guillaume Gomez | 2 | -2/+30 | |
2023-10-25 | Create `ErrorContext` type | Guillaume Gomez | 3 | -95/+183 | |
2023-09-28 | Pass `Node` parsing level to expressions | René Kijewski | 2 | -16/+16 | |
2023-09-28 | Limit nesting in parser nodes, too | René Kijewski | 2 | -4/+23 | |
2023-09-28 | Require Expr::parse() callers to supply Level | Dirkjan Ochtman | 2 | -16/+18 | |
2023-09-28 | Move Level into the crate root | Dirkjan Ochtman | 3 | -18/+17 | |
2023-09-28 | Yield a parser error when defining a macro named 'super' | Dirkjan Ochtman | 2 | -4/+11 | |
2023-09-28 | Limit expression nesting level to avoid stack overflows | Dirkjan Ochtman | 2 | -34/+83 | |
2023-09-11 | Use char_indices() to get byte indices for characters | Dirkjan Ochtman | 2 | -1/+8 | |
2023-09-11 | Rename some variables | Dirkjan Ochtman | 1 | -7/+7 | |
2023-08-03 | Optimize parsing boolean literals, too | René Kijewski | 1 | -9/+5 | |
2023-08-03 | Parse paths and identifiers only once | René Kijewski | 3 | -37/+53 | |
In the old implementation each variable in an expression would be parsed up to three times: * Try to parse a path because it contains a leading double colon, or infix double colons. * Try to parse it as path again by scanning for an identifier that contains an upper case character. * Fall back to scanning for any identifier. This PR turns all three steps into one, without the need for backtracking. | |||||
2023-08-02 | parser: fix white space issues in macro parsing | René Kijewski | 1 | -2/+2 | |
2023-08-02 | parser: allow negative numbers in patterns | René Kijewski | 1 | -1/+5 | |
2023-08-02 | parser: don't truncates whitespaces after arrays | René Kijewski | 1 | -1/+1 | |
2023-08-02 | parser: better error message for unknown nodes | René Kijewski | 2 | -9/+8 | |
2023-08-01 | parser: import `parser::{Expr, Node}` | René Kijewski | 2 | -5/+4 | |
2023-08-01 | parser: `node::Loop` is much bigger than the other variants | René Kijewski | 1 | -2/+2 | |
2023-08-01 | parser: move test for completeness | René Kijewski | 1 | -6/+6 | |
2023-08-01 | parser: add type for `Node::Comment` | René Kijewski | 2 | -146/+109 | |
2023-08-01 | parser: add `expr::Loop::parse()` | René Kijewski | 1 | -68/+70 | |
2023-08-01 | parser: remove re-exports `parser::{node,expr}::*` | René Kijewski | 3 | -13/+12 | |
2023-08-01 | parser: add type for `Node::Extends` | René Kijewski | 2 | -9/+16 | |
2023-08-01 | parser: add type for `Node::Include` | René Kijewski | 2 | -14/+28 | |
2023-08-01 | parser: rename `Node::Cond` into `If` and add type | René Kijewski | 2 | -35/+49 | |
2023-08-01 | parser: add type for `Node::Let` | René Kijewski | 2 | -26/+34 | |
2023-08-01 | parser: add type for `Node::Raw` | René Kijewski | 2 | -29/+38 | |
2023-08-01 | parser: add type for `Node::Lit` | René Kijewski | 3 | -49/+54 | |
2023-08-01 | parser: add type for `Node::BlockDef` | René Kijewski | 2 | -30/+45 | |
2023-08-01 | parser: add type for `Node::Match` | René Kijewski | 2 | -36/+54 | |
2023-08-01 | parser: add type for `Node::Call` | René Kijewski | 2 | -20/+40 | |
2023-08-01 | parser: add type for `Node::Import` | René Kijewski | 2 | -17/+33 | |
2023-08-01 | parser: let `Macro` know its name | René Kijewski | 1 | -52/+53 | |
2023-08-01 | parser: add `Ast::nodes()` method | René Kijewski | 1 | -0/+4 | |
2023-08-01 | parser: impement `PartialEq` for `Ast` | René Kijewski | 1 | -0/+7 | |
2023-08-01 | parser: implement `Debug` for `Parsed` | René Kijewski | 1 | -1/+9 | |