Skip to content

Releases: xp-framework/ast

9.2.2: Line numbers fix

18 Dec 21:42
Compare
Choose a tag to compare
  • Fixed line numbers for match conditions, case labels and catch
    statements
    (@thekid)

9.2.1: Type casting fix

04 Dec 19:10
Compare
Choose a tag to compare
  • Fixed type parsing in type casts:
    • Arrays, maps and generics with nullables, e.g. (array<?int>)$v
    • Intersection and union types, e.g. (int|string)$v.
      (@thekid)

9.2.0: Omit expressions in destructuring

12 Nov 13:55
Compare
Choose a tag to compare
  • Added support for omitting expressions in destructuring assignments,
    e.g. list($a, , $b)= $expr or [, $a]= $expr.
    (@thekid)

9.1.0: Generic wildcards

06 Nov 22:56
Compare
Choose a tag to compare
  • Add support for generic wildcards such as Filter<?>, resolving
    ambiguity with nullable types
    (@thekid)
  • Resolved ambiguity between short open tag and nullables in generics,
    e.g. Filter<?int>.
    (@thekid)

9.0.0. Type refactoring

06 Nov 22:56
Compare
Choose a tag to compare
  • Merged PR #40: Create generic member in lang.ast.nodes.Signature
    (@thekid)
  • Merged PR #39: Refactor type declaration, parents, interfaces to
    lang.ast.Type instances
    (@thekid)

8.2.0: PHP 8.2 types

03 Sep 10:48
Compare
Choose a tag to compare

8.1.0: Readonly classes

14 May 15:03
Compare
Choose a tag to compare
  • Merged PR #37: Implement readonly modifier for classes - @thekid

8.0.1: Namespace keyword fix

03 Apr 10:12
Compare
Choose a tag to compare

8.0.0: Annotations and comments rework

06 Jan 23:49
Compare
Choose a tag to compare

This major release promotes annotations and comments to Node subclasses, making it easy to implement different emitter scenarios for them. For example, classes to be used with the XP Framework will have meta information attached to them, while others will not, reducing their dependencies.

  • Merged PR #35: Support static closures (static fn() => ...) - @thekid
  • Implemented xp-framework/rfc#341: Drop XP 9 compatibility - @thekid
  • Merged PR #34: Refactor annotations from associative arrays to instances
    of the lang.ast.nodes.Annotations class.
    (@thekid)
  • Merged PR #33: Refactor apidoc comments from bare strings to instances
    of the lang.ast.nodes.Comment class.
    (@thekid)

7.7.2: PHP 8.2 fixes

08 Dec 19:56
Compare
Choose a tag to compare
  • Fixed PHP 8.2 warning about dynamic properties - @thekid