Releases: xp-framework/ast
Releases · xp-framework/ast
7.0.0: Extended match statement, cleanup & performance
- Fixed multiple semicolons yielding syntax errors, skip them instead
(@thekid) - Removed support for using curly braces as offset (e.g.
$value{0}
)
(@thekid) - Merged PR #22: Stream tokens directly instead of using if/else cascade
(@thekid) - Merged PR #18: Allow match without expression:
match { ... }
. See
https://wiki.php.net/rfc/match_expression_v2#allow_dropping_true
(@thekid) - Merged PR #17: Refactor parsing to allow blocks anywhere an expression
is allowed. This not only allowsfn() => { ... }
but also using blocks
inmatch
expressions.
(@thekid) - Merged PR #21: Remove legacy XP annotations (
#[@annotation]
) - @thekid - Merged PR #19: Remove support for Hack language annotations - @thekid
- Merged PR #20: Remove transformations API - @thekid
6.1.0: Non-capturing catches
- Added support for non-capturing catches, see this PHP 8 RFC:
https://wiki.php.net/rfc/non-capturing_catches
(@thekid)
6.0.0: Omit start tag
5.4.0: Deprecate hacklang style annotations
- Merged PR #9: Deprecate hacklang-style annotations in favor PHP 8
attributes. This is step 2 of xp-framework/compiler#86
(@thekid)
5.3.0: Yield all tokens as written
5.2.0: Named arguments
- Merged PR #13: Add syntactic support for named arguments (PHP 8), see
https://wiki.php.net/rfc/named_params
(@thekid)
5.1.0: Comments
5.0.0: Integrate parser
- Merged PR #8: Add support for match expression - @thekid
- Added builtin support for null-safe instance operator
?->
, see
https://wiki.php.net/rfc/nullsafe_operator & xp-framework/compiler#9
(@thekid) - Merged PR #7: PHP8 attributes support - @thekid
- Integrated
throw
expressions, see xp-framework/compiler#85 - @thekid - Fixed missing support for
insteadof
trait keyword - @thekid - Merged PR #1: Integrate parser
- Migrate tokenizer, parser and language from xp-framework/compiler
- Added enclosing type to constants, properties and methods
- Added
lang.ast.Node::is()
method to check for node kind - Added
lang.ast.nodes.TypeDeclaration::declare()
in favor ofinject
. - Added new parse tree API
- Added new visitor API
- Refactored types API to dedicated package
lang.ast.types
- Added dedicated classes for nullable, literal and value types
(@thekid)
4.0.0: Drop PHP5
- Dropped support for PHP 5.6, see xp-framework/rfc#334 - @thekid
3.0.3: XP10 compatibility
- Added compatibility with XP 10, see xp-framework/rfc#333 - @thekid