Skip to content

Releases: xp-framework/ast

7.0.0: Extended match statement, cleanup & performance

28 Nov 22:26
Compare
Choose a tag to compare
  • 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 allows fn() => { ... } but also using blocks
    in match 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

22 Nov 11:07
Compare
Choose a tag to compare

6.0.0: Omit start tag

09 Oct 19:37
Compare
Choose a tag to compare
  • Merged PR #16: Omit start token from stream - @thekid

5.4.0: Deprecate hacklang style annotations

29 Sep 16:50
Compare
Choose a tag to compare

5.3.0: Yield all tokens as written

26 Sep 22:06
Compare
Choose a tag to compare
  • Fixed named arguments using keywords - @thekid
  • Changed tokens to yield variables including the leading $ sign
    (@thekid)
  • Fixed visitor API for unary prefix (e.g. ++$i) and unary suffix
    (e.g. $i++) operators
    (@thekid)

5.2.0: Named arguments

12 Sep 10:51
Compare
Choose a tag to compare

5.1.0: Comments

09 Sep 19:37
Compare
Choose a tag to compare
  • Merged PR #12: Improve tokenizer performance - @thekid
  • Merged PR #11: Yield comments from tokenizer - @thekid
  • Merged PR #10: Fix PHP 8 native syntax - @thekid

5.0.0: Integrate parser

20 Jul 19:54
Compare
Choose a tag to compare
  • 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 of inject.
    • 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

30 Nov 09:35
Compare
Choose a tag to compare

3.0.3: XP10 compatibility

30 Nov 08:31
Compare
Choose a tag to compare