History log of /PHP-Parser/lib/PhpParser/ParserAbstract.php (Results 76 – 100 of 131)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v3.1.0
# 4a7d0113 28-Jun-2017 Nikita Popov

Add support for object type


Revision tags: v3.0.6
# 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 ...


# 8635365a 26-Apr-2017 Nikita Popov

Fix some typing issues


Revision tags: v3.0.5
# d5873b17 26-Feb-2017 Nikita Popov

Adjust the end attributes on the stack as well


# 48ec654d 26-Feb-2017 Nikita Popov

Make Expr\Error nodes empty

Resolves issue #359.


Revision tags: v3.0.4, v3.0.3
# 329e90c2 02-Feb-2017 Matthew Brown

Improve doc comments


# 8f623fb2 05-Feb-2017 Nikita Popov

Use closures instead of methods for semantic actions

The dispatch using $this->{'reduceRule' . $rule}() is very expensive
because it involves
* One allocation when converting $rule

Use closures instead of methods for semantic actions

The dispatch using $this->{'reduceRule' . $rule}() is very expensive
because it involves
* One allocation when converting $rule to a string
* Another allocation when concatenating the two strings
* Lowercasing during the method call
* Various uncached method checks, e.g. visibility.

Using an array of closures for semantic action dispatch is
significantly more efficient.

show more ...


# 3bbf8d8f 04-Feb-2017 Nikita Popov

Use local var for $stackPos

We're accessing $this->stackPos a lot, and property accesses are
much more expensive than local variable acesses. Its cheaper to
use a local var and pass

Use local var for $stackPos

We're accessing $this->stackPos a lot, and property accesses are
much more expensive than local variable acesses. Its cheaper to
use a local var and pass it as an argument to semantic actions.

show more ...


# bfea338d 25-Jan-2017 Nikita Popov

Update doc comments after previous comment

Make some of the type annotations more accurate, and complete the
generated doc-comments to be complete (with description and
parameter ann

Update doc comments after previous comment

Make some of the type annotations more accurate, and complete the
generated doc-comments to be complete (with description and
parameter annotations.)

show more ...


# e3b87f40 24-Jan-2017 Matthew Brown

Add non-void return types


# 13304d59 23-Jan-2017 Nikita Popov

Drop attribute poisoning in parser


# 7b441d21 10-Dec-2016 Matthew Brown

Fix issues reported by psalm


# 414adfb1 20-Jan-2017 Nikita Popov

Drop useNopStatements option


# 48d3243a 19-Jan-2017 Nikita Popov

Drop last vestiges of consistent var mode flag


# 67274b95 19-Jan-2017 Nikita Popov

Enforce useConsistentVariableNames


# ced914a3 19-Jan-2017 Nikita Popov

Update doc comments to be more specific

Now $stmts arrays really only contains Stmt nodes.


# 1bfbd7bc 19-Jan-2017 Nikita Popov

Make useExpressionStatement only supported mode


# 4d2a4d02 23-Dec-2016 Nikita Popov

Add first shot at format preserving pretty printer


# 9b2d35d1 24-Dec-2016 Nikita Popov

Add expression statement mode


# a947e731 22-Dec-2016 Nikita Popov

Add useConsistentVariableNodes mode

The parameter case is a bit weird, because the subnode is called
"name" here, rather than "var". Nothing we can do about that in
this version thou

Add useConsistentVariableNodes mode

The parameter case is a bit weird, because the subnode is called
"name" here, rather than "var". Nothing we can do about that in
this version though.

The two parser options might be merged. I've kept it separate,
because I think this variable representation should become the
default (or even only representation) in the future, while I'm
less sure about the Identifier thing.

show more ...


# 122f4499 22-Dec-2016 Nikita Popov

Represent builtin types using Identifier as well


# 6bcc6c31 22-Dec-2016 Nikita Popov

Add useIdentifierNodes mode to parser

In this mode non-namespaced names that are currently represented
using strings will be represented using Identifier nodes instead.
Identifier no

Add useIdentifierNodes mode to parser

In this mode non-namespaced names that are currently represented
using strings will be represented using Identifier nodes instead.
Identifier nodes have a string $name subnode and coerce to string.

This allows preserving attributes and in particular location
information on identifiers.

show more ...


# c1e0bab4 11-Dec-2016 Nikita Popov

Add support for negative interpolated offsets

A late addition to PHP 7.1 which I missed.


# 70319e27 07-Dec-2016 Nikita Popov

Parse 0 in "$a[0]" as LNumber (#325)


123456