itsalmostchristmas
2b4aa4458a
Make embeds deterministic
2026-05-16 09:48:23 +01:00
Fabien Potencier
54d5c004b4
Deprecate passing a non-AbstractExpression node to Parser::setParent()
2026-02-22 15:28:59 +01:00
Fabien Potencier
861215c507
Fix CS
2026-02-07 09:07:38 +01:00
Vincent Langlet
790eee7ae0
Add throw tag to parse methods
2025-10-18 12:28:49 +02:00
Vincent Langlet
cc12df995c
Introduce registerUndefinedTestCallback
2025-09-16 07:40:27 +02:00
Fabien Potencier
3d760aec1c
Avoid polluting ModuleNode::toString() with embedded templates
2025-02-28 08:57:55 +01:00
Fabien Potencier
151aa4ecda
Fix CS
2025-02-14 12:57:03 +01:00
Fabien Potencier
d6f539bb01
Avoid storing expression parser instances in Node attributes
2025-02-14 11:32:12 +01:00
Fabien Potencier
79d828b09d
Fix version
2025-02-14 08:47:54 +01:00
Fabien Potencier
4b57f48a65
Use generics in ExpressionParsers
2025-02-14 08:38:53 +01:00
Fabien Potencier
8ff19090f3
Fix precedence rules
2025-02-14 08:38:53 +01:00
Fabien Potencier
f67078b5c4
Move Operators to ExpressionParsers, deprecate ExpressionParser
2025-02-14 08:38:53 +01:00
Fabien Potencier
42c82e1e9b
Extract operators logic from ExpressionParser to their own classes
2025-02-14 08:38:53 +01:00
Fabien Potencier
ade8bce516
Deprecate Token::getType()
2025-01-24 15:48:04 +01:00
Simon André
82be13429c
Add return type annotations on Twig 3 to prepare Twig 4
2025-01-24 11:32:59 +01:00
Fabien Potencier
89fdc7d31d
Refactor code
2024-10-25 07:47:55 +02:00
Fabien Potencier
fc15e7ccbc
Rename Node classes related to variables
2024-10-23 12:36:57 +02:00
Fabien Potencier
1105964873
Rework macros handling
2024-10-20 21:53:20 +02:00
Fabien Potencier
62f0a96b68
Introduce a way to test Twig callables at compile time
2024-10-08 18:41:34 +02:00
Fabien Potencier
8b278986b8
Deprecate using Node directly, introduce EmptyNode and Nodes
2024-09-27 07:42:41 +02:00
Fabien Potencier
70b912fa10
minor #4228 Use CPP in full code base (andreybolonin)
...
This PR was squashed before being merged into the 3.x branch.
Discussion
----------
Use CPP in full code base
Commits
-------
28923f42 Use CPP in full code base
2024-08-29 19:29:42 +02:00
andreybolonin1989@gmail.com
28923f4269
Use CPP in full code base
2024-08-29 19:29:39 +02:00
Fabien Potencier
5fca700cbd
Deprecate the fact that the extends and use tags are always allowed in a sandboxed template
2024-08-28 13:40:53 +02:00
Fabien Potencier
9e6c4a6ac1
Deprecate some internal methods from Parser
2024-08-26 09:24:03 +02:00
Fabien Potencier
cf4727606a
Move code from ExtendsTokenParser to Parser
2024-08-26 07:56:37 +02:00
Fabien Potencier
758be4dde3
Fix error message
2024-08-24 12:57:39 +02:00
Fabien Potencier
7173182537
Fix code
2024-08-24 10:55:34 +02:00
Fabien Potencier
0c75136162
Deprecate returning null from TokenParserInterface::parse()
2024-08-24 10:52:24 +02:00
Fabien Potencier
31037d0e51
Refactor code
2024-08-20 15:39:54 +02:00
Simon André
c662e0ce27
Remove remaining const optimizations
...
After #4198 some `Token::` const optimization remains.
This PR remove them.. **in case** it was not intended
2024-08-15 19:11:55 +02:00
Fabien Potencier
cd0ac3cc0a
Remove const optimization
2024-08-12 09:40:52 +02:00
Fabien Potencier
d2eab12e70
Add support for first class callables
2024-07-14 13:56:14 +02:00
Fabien Potencier
b63bde3063
Optimize sprintf() calls for PHP 8.4
2024-06-21 08:16:55 +02:00
Fabien Potencier
f7f11ea410
Fix CS
2024-02-10 09:52:03 +01:00
Fabien Potencier
2b2ac80d34
Fxi some errors reported by phpstan
2024-02-05 17:48:36 +01:00
Jérôme Tamarelle
1d5c09285f
Use PHP 8.0 functions with polyfill
2023-10-08 17:11:07 +02:00
Fabien Potencier
5193653ecb
Fix CS
2023-10-08 09:05:22 +02:00
Fabien Potencier
e33577f1be
Merge branch '2.x' into 3.x
...
* 2.x:
do not reuse internally generated variable names during parsing
2022-02-25 09:30:09 +01:00
Christian Flothmann
1411c454c1
do not reuse internally generated variable names during parsing
2022-02-24 17:25:50 +01:00
Fabien Potencier
63b3ddd11a
Merge branch '2.x' into 3.x
...
* 2.x:
Hashing is not necessary to generate unique variable names during compilation
2021-12-14 15:28:12 -08:00
Jérôme Tamarelle
ba2b4e6dfe
Hashing is not necessary to generate unique variable names during compilation
2021-12-14 15:26:59 -08:00
Den
17c6371fb5
Some code style fixes
2021-05-14 10:26:05 +02:00
Fabien Potencier
2dd1d909b9
Fix CS
2021-05-12 09:37:17 +02:00
Fabien Potencier
81751d6671
Add "registerUndefinedTokenParserCallback"
2020-12-31 09:12:48 +01:00
Fabien Potencier
dce7bd9e14
Merge branch '2.x' into 3.x
...
* 2.x:
macros imported "globally" in a template are now available in macros without re-importing them
added more tests
added some tests
2019-05-17 14:16:15 +02:00
Fabien Potencier
e138164015
macros imported "globally" in a template are now available in macros without re-importing them
2019-05-17 13:03:55 +02:00
Fabien Potencier
b2fc808c1d
Merge branch '2.x' into 3.x
...
* 2.x:
fixed typo
fixed tests
fixed a PHP fatal error when calling a macro imported in the template in a nested block
fixed typo
added some tests
fixed a regression
2019-05-17 08:14:55 +02:00
Fabien Potencier
c8d2cc3ae5
Merge branch '1.x' into 2.x
...
* 1.x:
fixed typo
2019-05-17 08:14:40 +02:00
Fabien Potencier
b086d4f4bb
fixed typo
2019-05-17 08:14:31 +02:00
Fabien Potencier
e9a09d90c3
Merge branch '1.x' into 2.x
...
* 1.x:
fixed a PHP fatal error when calling a macro imported in the template in a nested block
2019-05-17 08:09:05 +02:00