Releases: xp-framework/compiler
Releases · xp-framework/compiler
6.7.0: Native callable syntax
- Changed emitter to omit extra newlines between members, making line
numbers more consistent with the original code.
(@thekid) - Merged PR #114: Implements first-class callable syntax:
strlen(...)
now returns a closure which if invoked with a string argument, returns
its length. Includes support for static and instance methods as well as
indirect references like$closure(...)
andself::{$expression}(...)
,
see https://wiki.php.net/rfc/first_class_callable_syntax
(@thekid)
6.6.0: Performance, code coverage improvements
- Emit null-coalesce operator as
$a ?? $a= expression
instead of as
$a= $a ?? expression
, saving one assignment operation for non-null
case. Applies to PHP 7.0, 7.1 and 7.2.
(@thekid) - Removed conditional checks for PHP 8.1 with native enum support, all
releases and builds available on CI systems now contain it.
(@thekid) - Increased test coverage significantly (to more than 90%), especially
for classes used by the compiler command line.
(@thekid)
6.5.0: Declare directives
6.4.0: Never return type
6.3.2: Anonymous child classes
- Allowed
new class() extends self
inside class declarations - @thekid
6.3.1: Cloning fix
6.3.0: PHP enum support
6.2.0: Arbitrary expressions as initializers
6.1.1: Nullable types fixes
6.1.0: Show languages and emitters
- Included languages and emitters in
xp compile
output - @thekid