History log of /PHP-Parser/ (Results 101 – 125 of 1690)
Revision (<<< Hide revision tags) (Show revision tags >>>)Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
263fa80b14-Sep-2023 Markus Staab

Use more precise Use_::TYPE_* types (#945)

For better static analysis support in consuming projects.

5da5231f27-Aug-2023 Nikita Popov

Indent heredoc/nowdoc when targeting PHP >= 7.3

8d58380127-Aug-2023 Nikita Popov

Default pretty printer to PHP 7.4

efe93a1717-Aug-2023 Nikita Popov

Update PHP versions in workflow

ea77807517-Aug-2023 Nikita Popov

Add more property types

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

9a68468f16-Aug-2023 Nikita Popov

Update phpstan baseline

502b090916-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 ...


lib/PhpParser/Builder/ClassConst.php
lib/PhpParser/Builder/Class_.php
lib/PhpParser/Builder/Declaration.php
lib/PhpParser/Builder/EnumCase.php
lib/PhpParser/Builder/Enum_.php
lib/PhpParser/Builder/FunctionLike.php
lib/PhpParser/Builder/Function_.php
lib/PhpParser/Builder/Interface_.php
lib/PhpParser/Builder/Method.php
lib/PhpParser/Builder/Namespace_.php
lib/PhpParser/Builder/Param.php
lib/PhpParser/Builder/Property.php
lib/PhpParser/Builder/TraitUse.php
lib/PhpParser/Builder/TraitUseAdaptation.php
lib/PhpParser/Builder/Trait_.php
lib/PhpParser/Builder/Use_.php
lib/PhpParser/Comment.php
lib/PhpParser/Error.php
lib/PhpParser/ErrorHandler/Collecting.php
lib/PhpParser/Internal/DiffElem.php
lib/PhpParser/Internal/PrintableNewAnonClassNode.php
lib/PhpParser/Internal/TokenPolyfill.php
lib/PhpParser/Internal/TokenStream.php
lib/PhpParser/JsonDecoder.php
lib/PhpParser/Lexer.php
lib/PhpParser/Lexer/Emulative.php
lib/PhpParser/Lexer/TokenEmulator/ReverseEmulator.php
lib/PhpParser/NameContext.php
lib/PhpParser/Node/Arg.php
lib/PhpParser/Node/ArrayItem.php
lib/PhpParser/Node/Attribute.php
lib/PhpParser/Node/AttributeGroup.php
lib/PhpParser/Node/ClosureUse.php
lib/PhpParser/Node/Const_.php
lib/PhpParser/Node/DeclareItem.php
lib/PhpParser/Node/Expr/ArrayDimFetch.php
lib/PhpParser/Node/Expr/Array_.php
lib/PhpParser/Node/Expr/ArrowFunction.php
lib/PhpParser/Node/Expr/Assign.php
lib/PhpParser/Node/Expr/AssignOp.php
lib/PhpParser/Node/Expr/AssignRef.php
lib/PhpParser/Node/Expr/BinaryOp.php
lib/PhpParser/Node/Expr/BitwiseNot.php
lib/PhpParser/Node/Expr/BooleanNot.php
lib/PhpParser/Node/Expr/Cast.php
lib/PhpParser/Node/Expr/Clone_.php
lib/PhpParser/Node/Expr/Closure.php
lib/PhpParser/Node/Expr/ConstFetch.php
lib/PhpParser/Node/Expr/Empty_.php
lib/PhpParser/Node/Expr/ErrorSuppress.php
lib/PhpParser/Node/Expr/Eval_.php
lib/PhpParser/Node/Expr/Exit_.php
lib/PhpParser/Node/Expr/Include_.php
lib/PhpParser/Node/Expr/Instanceof_.php
lib/PhpParser/Node/Expr/Isset_.php
lib/PhpParser/Node/Expr/Match_.php
lib/PhpParser/Node/Expr/MethodCall.php
lib/PhpParser/Node/Expr/NullsafeMethodCall.php
lib/PhpParser/Node/Expr/NullsafePropertyFetch.php
lib/PhpParser/Node/Expr/PostDec.php
lib/PhpParser/Node/Expr/PostInc.php
lib/PhpParser/Node/Expr/PreDec.php
lib/PhpParser/Node/Expr/PreInc.php
lib/PhpParser/Node/Expr/Print_.php
lib/PhpParser/Node/Expr/PropertyFetch.php
lib/PhpParser/Node/Expr/Ternary.php
lib/PhpParser/Node/Expr/Throw_.php
lib/PhpParser/Node/Expr/UnaryMinus.php
lib/PhpParser/Node/Expr/UnaryPlus.php
lib/PhpParser/Node/Expr/YieldFrom.php
lib/PhpParser/Node/Expr/Yield_.php
lib/PhpParser/Node/Identifier.php
lib/PhpParser/Node/InterpolatedStringPart.php
lib/PhpParser/Node/MatchArm.php
lib/PhpParser/Node/Name.php
lib/PhpParser/Node/Param.php
lib/PhpParser/Node/PropertyItem.php
lib/PhpParser/Node/Scalar/Float_.php
lib/PhpParser/Node/Scalar/Int_.php
lib/PhpParser/Node/Scalar/String_.php
lib/PhpParser/Node/StaticVar.php
lib/PhpParser/Node/Stmt/Break_.php
lib/PhpParser/Node/Stmt/Case_.php
lib/PhpParser/Node/Stmt/Catch_.php
lib/PhpParser/Node/Stmt/ClassConst.php
lib/PhpParser/Node/Stmt/ClassLike.php
lib/PhpParser/Node/Stmt/ClassMethod.php
lib/PhpParser/Node/Stmt/Class_.php
lib/PhpParser/Node/Stmt/Const_.php
lib/PhpParser/Node/Stmt/Continue_.php
lib/PhpParser/Node/Stmt/Declare_.php
lib/PhpParser/Node/Stmt/Do_.php
lib/PhpParser/Node/Stmt/Echo_.php
lib/PhpParser/Node/Stmt/ElseIf_.php
lib/PhpParser/Node/Stmt/Else_.php
lib/PhpParser/Node/Stmt/EnumCase.php
lib/PhpParser/Node/Stmt/Enum_.php
lib/PhpParser/Node/Stmt/Expression.php
lib/PhpParser/Node/Stmt/Finally_.php
lib/PhpParser/Node/Stmt/For_.php
lib/PhpParser/Node/Stmt/Foreach_.php
lib/PhpParser/Node/Stmt/Function_.php
lib/PhpParser/Node/Stmt/Global_.php
lib/PhpParser/Node/Stmt/Goto_.php
lib/PhpParser/Node/Stmt/GroupUse.php
lib/PhpParser/Node/Stmt/HaltCompiler.php
lib/PhpParser/Node/Stmt/If_.php
lib/PhpParser/Node/Stmt/InlineHTML.php
lib/PhpParser/Node/Stmt/Interface_.php
lib/PhpParser/Node/Stmt/Label.php
lib/PhpParser/Node/Stmt/Namespace_.php
lib/PhpParser/Node/Stmt/Property.php
lib/PhpParser/Node/Stmt/Return_.php
lib/PhpParser/Node/Stmt/Static_.php
lib/PhpParser/Node/Stmt/Switch_.php
lib/PhpParser/Node/Stmt/Throw_.php
lib/PhpParser/Node/Stmt/TraitUse.php
lib/PhpParser/Node/Stmt/TraitUseAdaptation.php
lib/PhpParser/Node/Stmt/TraitUseAdaptation/Alias.php
lib/PhpParser/Node/Stmt/TraitUseAdaptation/Precedence.php
lib/PhpParser/Node/Stmt/TryCatch.php
lib/PhpParser/Node/Stmt/Unset_.php
lib/PhpParser/Node/Stmt/Use_.php
lib/PhpParser/Node/Stmt/While_.php
lib/PhpParser/Node/UseItem.php
lib/PhpParser/NodeAbstract.php
lib/PhpParser/NodeDumper.php
lib/PhpParser/NodeTraverser.php
lib/PhpParser/NodeVisitor/FindingVisitor.php
lib/PhpParser/NodeVisitor/FirstFindingVisitor.php
lib/PhpParser/NodeVisitor/NameResolver.php
lib/PhpParser/NodeVisitor/NodeConnectingVisitor.php
lib/PhpParser/NodeVisitor/ParentConnectingVisitor.php
lib/PhpParser/Parser/Php7.php
lib/PhpParser/Parser/Php8.php
lib/PhpParser/ParserAbstract.php
lib/PhpParser/PhpVersion.php
lib/PhpParser/PrettyPrinterAbstract.php
test/PhpParser/NodeAbstractTest.php
3c0432b016-Aug-2023 Nikita Popov

Remove emulation for unsupported PHP versions

ee3e7db316-Aug-2023 Nikita Popov

Raise minimum PHP version to PHP 7.4

ba85124313-Aug-2023 Nikita Popov

Replace startLexing() with tokenize()

For now Lexer::getTokens() still exists, but should probably be
removed.

d1d784a513-Aug-2023 Nikita Popov

Fixup line numbers when applying emulator patches

This fixes the test failures on PHP 7.2.

62853b1713-Aug-2023 Nikita Popov

Fix PhpStan errors

4b49704529-Jul-2023 Nikita Popov

Move attribute handling into parser

The Lexer now only provides the tokens to the parser, while the
parser is responsible for determining which attributes are placed
on notes. This o

Move attribute handling into parser

The Lexer now only provides the tokens to the parser, while the
parser is responsible for determining which attributes are placed
on notes. This only needs to be done when the attributes are
actually needed, rather than for all tokens.

This removes the usedAttributes lexer option (and lexer options
entirely). The attributes are now enabled unconditionally. They
have less overhead now, and the need to explicitly enable them for
some use cases (e.g. formatting-preserving printing) doesn't seem
like a good tradeoff anymore.

There are some additional changes to the Lexer interface that
should be done after this, and the docs / upgrading guide haven't
been adjusted yet.

show more ...

b20267c509-Jul-2023 Nikita Popov

Make use of default actions

For the default action $$ = $1, save the closure invocation.

748aab3309-Jul-2023 Nikita Popov

Don't set start attributes for whitespace

These will get overwritten later anyway.

c48ee36f09-Jul-2023 Nikita Popov

Allow passing visitors to NodeTraverser constructor

8b13719902-Jul-2023 Nikita Popov

Minor documentation updates

eaa1d91b25-Jun-2023 Abdul Malik Ikhsan

Early return false after VariadicPlaceholder check on CallLike::isFirstClassCallable() (#924)

VariadicPlaceholder can only occur as the first (and only) argument, so avoid a loop to check fo

Early return false after VariadicPlaceholder check on CallLike::isFirstClassCallable() (#924)

VariadicPlaceholder can only occur as the first (and only) argument, so avoid a loop to check for it.

show more ...

3fb4b92f13-Jun-2023 Danny van der Sluijs

Update main.yml to use GitHub Actions V3

Updates the GitHub Actions from V2 to V3

(cherry picked from commit 1d0748ad35201d483816634dd4bfe55a6f26d857)

571ca90b24-Jun-2023 Nikita Popov

Release PHP-Parser 5.0.0-alpha3

16c766ea28-May-2023 Nikita Popov

Don't take subnodes by reference when traversing

Explicitly assign the property where necessary to avoid the
creation of unnecessary reference-wrappers everywhere.

53f6717328-May-2023 Nikita Popov

Remove unnecessary Node return value from traverseNode()

The node always stays the same: We may only change subnodes.

5b65f9fc27-May-2023 Nikita Popov

Some documentation updates

69993a1821-May-2023 Nikita Popov

Update CHANGELOG and UPGRADING

2364757321-May-2023 Nikita Popov

Represent names using string rather than array of parts

In most circumstances we are interested in the whole string, not
the parts split by namespace separator. As names are common, this

Represent names using string rather than array of parts

In most circumstances we are interested in the whole string, not
the parts split by namespace separator. As names are common, this
representation measurably improves memory usage and performance.

show more ...


lib/PhpParser/Node/Name.php
lib/PhpParser/PrettyPrinter/Standard.php
test/PhpParser/Node/NameTest.php
test/PhpParser/NodeDumperTest.php
test/PhpParser/NodeVisitor/NameResolverTest.php
test/code/formatPreservation/listInsertion.test
test/code/parser/errorHandling/eofError.test
test/code/parser/errorHandling/recovery.test
test/code/parser/expr/arraySpread.test
test/code/parser/expr/assignNewByRef.test
test/code/parser/expr/closure.test
test/code/parser/expr/comparison.test
test/code/parser/expr/constant_expr.test
test/code/parser/expr/dynamicClassConst.test
test/code/parser/expr/fetchAndCall/args.test
test/code/parser/expr/fetchAndCall/constFetch.test
test/code/parser/expr/fetchAndCall/constantDeref.test
test/code/parser/expr/fetchAndCall/funcCall.test
test/code/parser/expr/fetchAndCall/namedArgs.test
test/code/parser/expr/fetchAndCall/newDeref.test
test/code/parser/expr/fetchAndCall/staticCall.test
test/code/parser/expr/fetchAndCall/staticPropertyFetch.test
test/code/parser/expr/firstClassCallables.test
test/code/parser/expr/issetAndEmpty.test
test/code/parser/expr/keywordsInNamespacedName.test
test/code/parser/expr/match.test
test/code/parser/expr/new.test
test/code/parser/expr/throw.test
test/code/parser/expr/trailingCommas.test
test/code/parser/expr/uvs/constDeref.test
test/code/parser/expr/uvs/globalNonSimpleVarError.test
test/code/parser/expr/uvs/indirectCall.test
test/code/parser/expr/uvs/new.test
test/code/parser/expr/uvs/staticProperty.test
test/code/parser/expr/variable.test
test/code/parser/scalar/numberSeparators.test
test/code/parser/semiReserved.test
test/code/parser/stmt/attributes.test
test/code/parser/stmt/class/anonymous.test
test/code/parser/stmt/class/conditional.test
test/code/parser/stmt/class/enum.test
test/code/parser/stmt/class/interface.test
test/code/parser/stmt/class/name.test
test/code/parser/stmt/class/propertyTypes.test
test/code/parser/stmt/class/shortEchoAsIdentifier.test
test/code/parser/stmt/class/simple.test
test/code/parser/stmt/class/staticType.test
test/code/parser/stmt/class/trait.test
test/code/parser/stmt/class/typedConstants.test
test/code/parser/stmt/const.test
test/code/parser/stmt/function/conditional.test
test/code/parser/stmt/function/defaultValues.test
test/code/parser/stmt/function/disjointNormalFormTypes.test
test/code/parser/stmt/function/intersectionTypes.test
test/code/parser/stmt/function/nullFalseTrueTypes.test
test/code/parser/stmt/function/nullableTypes.test
test/code/parser/stmt/function/readonlyFunction.test
test/code/parser/stmt/function/returnTypes.test
test/code/parser/stmt/function/typeDeclarations.test
test/code/parser/stmt/function/typeVersions.test
test/code/parser/stmt/function/unionTypes.test
test/code/parser/stmt/function/variadic.test
test/code/parser/stmt/generator/basic.test
test/code/parser/stmt/generator/yieldPrecedence.test
test/code/parser/stmt/haltCompiler.test
test/code/parser/stmt/haltCompilerOffset.test
test/code/parser/stmt/multiCatch.test
test/code/parser/stmt/namespace/alias.test
test/code/parser/stmt/namespace/braced.test
test/code/parser/stmt/namespace/commentAfterNamespace.test
test/code/parser/stmt/namespace/groupUse.test
test/code/parser/stmt/namespace/groupUseErrors.test
test/code/parser/stmt/namespace/groupUsePositions.test
test/code/parser/stmt/namespace/groupUseTrailingComma.test
test/code/parser/stmt/namespace/invalidName.test
test/code/parser/stmt/namespace/mix.test
test/code/parser/stmt/namespace/name.test
test/code/parser/stmt/namespace/nested.test
test/code/parser/stmt/namespace/notBraced.test
test/code/parser/stmt/namespace/nsAfterHashbang.test
test/code/parser/stmt/namespace/outsideStmt.test
test/code/parser/stmt/namespace/outsideStmtInvalid.test
test/code/parser/stmt/newInInitializer.test
test/code/parser/stmt/tryCatch.test
test/code/parser/stmt/tryCatch_without_variable.test
test/code/parser/stmt/tryWithoutCatch.test

12345678910>>...68