History log of /PHP-Parser/lib/PhpParser/Node/Expr/Closure.php (Results 1 – 25 of 28)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# ea778075 17-Aug-2023 Nikita Popov

Add more property types

Some of these are not maximally accurate due to lack of union
types.


# 502b0909 16-Aug-2023 Nikita Popov

Add property types

Types omitted in two places where we violate them currently:
Namespace_::$stmts can be null during parsing, and Enum_::$scalarType
can be a complex type for invali

Add property types

Types omitted in two places where we violate them currently:
Namespace_::$stmts can be null during parsing, and Enum_::$scalarType
can be a complex type for invalid programs.

show more ...


# c23976a2 20-May-2023 Nikita Popov

Stop accepting strings as types

For types the use of a string is ambiguous -- it could be either
an Identifier or a Name. Don't guess.

Retain the implicit promotion to Identifie

Stop accepting strings as types

For types the use of a string is ambiguous -- it could be either
an Identifier or a Name. Don't guess.

Retain the implicit promotion to Identifier in places where only
Identifier is legal, e.g. various symbol names.

show more ...


# f98341f6 17-Sep-2022 Nikita Popov

Specify more types


# a099803d 11-Sep-2022 Nikita Popov

Use array<string, mixed> type for $attributes

Slightly more accurate, and stops PHPStan from complaining about
the missing array type information.


# dd63ddbc 28-Aug-2022 Nikita Popov

Add php-cs-fixer config and reformat

The formatting in this project has become something of a mess,
because it changed over time. Add a CS fixer config and reformat
to the desired st

Add php-cs-fixer config and reformat

The formatting in this project has become something of a mess,
because it changed over time. Add a CS fixer config and reformat
to the desired style, which is PSR-12, but with sane brace placement.

show more ...


# b0469d12 12-Jun-2022 Nikita Popov

Rename Expr\ClosureUse -> ClosureUse

This is not a real expression, treat it similarly to Node\Arg
or Node\Param.

The old name is retained as an alias for compatibility.


# 0483391a 02-Sep-2021 Nikita Popov

Introduce ComplexType base class

With the upcoming addition of intersection types, a type can
be Identifier|Name|NullableType|UnionType|IntersectionType, which
is quite the mouthful.

Introduce ComplexType base class

With the upcoming addition of intersection types, a type can
be Identifier|Name|NullableType|UnionType|IntersectionType, which
is quite the mouthful. Give NullableType and UnionType a common
base class ComplexType, which does not have any behavior, but
allows to write these types (and check them in instanceof) more
easily.

show more ...


# 4c22c627 13-Sep-2020 Tomas Votruba

[PHP 8.0] Add attributes support (#661)

Adds support for PHP 8 attributes, represented using `AttrGroup` nodes
containing `Attribute` nodes. The `attrGroup` subnode is added to all
n

[PHP 8.0] Add attributes support (#661)

Adds support for PHP 8 attributes, represented using `AttrGroup` nodes
containing `Attribute` nodes. The `attrGroup` subnode is added to all
nodes that can have attributes.

This is still missing FPPP support.

Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>

show more ...


Revision tags: v4.3.0
# 664c1012 25-Oct-2019 Nikita Popov

Add support for union types

We definitely need to introduce a general "Type" abstraction in
the next major version.


Revision tags: v4.2.5, v4.2.4, v4.2.3, v4.2.2
# 993f2990 12-May-2019 Nikita Popov

Avoid parent constructor call during node construction

Instead explicitly assign the attributes. This is a minor
performance improvement.


Revision tags: v4.2.1, v4.2.0, v4.1.1, v4.1.0, v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v3.1.5, v4.0.0beta1, v3.1.4
# 248b29ec 10-Jan-2018 Gabriel Caruso

Add public visibility to getType method (#463)


Revision tags: v4.0.0alpha3, v3.1.3
# 1c11626f 12-Nov-2017 Nikita Popov

Add explicit getType() methods

Rather than automatically deriving getType() from the class name.


Revision tags: v4.0.0alpha2, v3.1.2, v4.0.0alpha1, v3.1.1
# e2e99f26 18-Aug-2017 TomasVotruba

Add strict_types to lib code


# ec535ea1 13-Aug-2017 TomasVotruba

[cs] use PHP 5.4 short array, since PHP 7.0 is min version


Revision tags: v3.1.0, v3.0.6
# 73dc35cb 07-May-2017 Nikita Popov

Allow null in ClassMethod::getStmts()


# a32e3797 28-Apr-2017 Nikita Popov

Generate PHP 7 type annotations


# a6846e3b 28-Apr-2017 Nikita Popov

Always use Identifier nodes

The parser will now always generate Identifier nodes (for
non-namespaced identifiers). This obsoletes the useIdentifierNodes
parser option.

Node

Always use Identifier nodes

The parser will now always generate Identifier nodes (for
non-namespaced identifiers). This obsoletes the useIdentifierNodes
parser option.

Node constructors still accepts strings and will implicitly create
an Identifier wrapper. Identifier implement __toString(), so that
outside of strict-mode many things continue to work without changes.

show more ...


# fba61390 24-Apr-2017 Nikita Popov

Use null-coalesce operator


Revision tags: v3.0.5, v3.0.4, v3.0.3
# ced914a3 19-Jan-2017 Nikita Popov

Update doc comments to be more specific

Now $stmts arrays really only contains Stmt nodes.


Revision tags: v3.0.2
# 030de805 05-Dec-2016 Matthew Brown

Add NullableType to types of properties/args that offer it (#323)


Revision tags: v3.0.1, v3.0.0, v3.0.0beta2, v3.0.0beta1, v2.1.1, v3.0.0alpha1, v2.1.0, v2.0.1, v2.0.0, v2.0.0beta1, v1.4.1, v2.0.0alpha1, v1.4.0
# 42e368e9 02-Jul-2015 Nikita Popov

Fix returnType typehints

Fixes issues #207


# bb2c5303 01-Jun-2015 Suralc

Add a FunctionLike interface to Methods, Functions and Closures.

The elements listed above share common elements like parameters, possible return types and bodies.


# 29b9015f 02-May-2015 Nikita Popov

Drop support for old Node format


Revision tags: v1.3.0, v1.2.2, v1.2.1, v1.2.0
# 3ad0d4b3 12-Mar-2015 Nikita Popov

Add support for return type declarations [PHP 7]

This adds an additional "returnType" subnode to Stmt\Function_,
Stmt\ClassMethod and Expr\Closure, as well as the corresponding
suppo

Add support for return type declarations [PHP 7]

This adds an additional "returnType" subnode to Stmt\Function_,
Stmt\ClassMethod and Expr\Closure, as well as the corresponding
support in the name resolver and pretty printer.

show more ...


12