This is an automated email from the ASF dual-hosted git repository. junichi11 pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git
commit 82df07803824499b2a0052592fcadb0f4b24d30f Merge: 5e92c2d0498 f33b8da223f Author: Junichi Yamamoto <[email protected]> AuthorDate: Tue Jul 14 22:33:36 2026 +0900 Merge pull request #8227 from junichi11/php84-property-hooks PHP 8.4 Support: Property hooks php/php.editor/nbproject/project.xml | 9 + .../modules/php/editor/actions/IconsUtils.java | 40 +- .../modules/php/editor/api/PhpElementKind.java | 61 +- .../modules/php/editor/api/PhpModifiers.java | 4 +- .../php/editor/api/elements/FieldElement.java | 39 +- .../editor/api/elements/PropertyHookElement.java | 80 + .../modules/php/editor/csl/FoldingScanner.java | 26 +- .../modules/php/editor/csl/NavigatorScanner.java | 224 +- .../php/editor/csl/OccurrencesFinderImpl.java | 5 +- .../modules/php/editor/csl/PHPFoldingProvider.java | 32 +- .../php/editor/csl/PhpStructureScanner.java | 3 +- .../php/editor/elements/FieldElementImpl.java | 77 +- .../php/editor/elements/IndexQueryImpl.java | 14 +- .../editor/elements/PropertyHookElementImpl.java | 203 + .../modules/php/editor/indent/CodeStyle.java | 30 + .../modules/php/editor/indent/FmtOptions.java | 106 +- .../modules/php/editor/indent/FormatToken.java | 13 +- .../modules/php/editor/indent/FormatVisitor.java | 45 +- .../modules/php/editor/indent/IndentUtils.java | 42 +- .../php/editor/indent/IndentationCounter.java | 435 +- .../modules/php/editor/indent/TokenFormatter.java | 138 +- .../modules/php/editor/indent/ui/Bundle.properties | 7 + .../php/editor/indent/ui/FmtBlankLines.form | 99 +- .../php/editor/indent/ui/FmtBlankLines.java | 88 +- .../modules/php/editor/indent/ui/FmtBraces.form | 141 +- .../modules/php/editor/indent/ui/FmtBraces.java | 106 +- .../modules/php/editor/indent/ui/FmtSpaces.java | 47 +- .../modules/php/editor/indent/ui/Spaces.php | 7 + .../modules/php/editor/index/PHPIndexer.java | 56 +- .../modules/php/editor/lexer/LexUtilities.java | 89 +- .../php/editor/lexer/PHP5ColoringLexer.java | 2161 +++--- .../modules/php/editor/lexer/PHPTokenId.java | 1 + .../modules/php/editor/lexer/utils/LexerUtils.java | 223 + .../modules/php/editor/model/FieldElement.java | 32 + .../modules/php/editor/model/IndexScope.java | 23 + .../modules/php/editor/model/InterfaceScope.java | 1 - .../php/editor/model/PropertyHookScope.java | 88 + .../modules/php/editor/model/TypeScope.java | 18 + .../php/editor/model/impl/ClassScopeImpl.java | 182 +- .../php/editor/model/impl/FieldElementImpl.java | 85 +- .../php/editor/model/impl/IndexScopeImpl.java | 43 +- .../php/editor/model/impl/InterfaceScopeImpl.java | 89 +- .../php/editor/model/impl/ModelBuilder.java | 22 +- .../php/editor/model/impl/ModelVisitor.java | 65 +- .../php/editor/model/impl/OccurenceBuilder.java | 22 +- .../editor/model/impl/PropertyHookScopeImpl.java | 118 + .../model/impl/PropertyHookSignatureItem.java | 298 + .../php/editor/model/impl/TraitScopeImpl.java | 76 +- .../php/editor/model/nodes/ASTNodeInfo.java | 105 +- .../model/nodes/PropertyHookDeclarationInfo.java | 82 + .../model/nodes/SingleFieldDeclarationInfo.java | 26 + .../modules/php/editor/parser/ASTPHP5Parser.java | 7005 ++++++++++--------- .../modules/php/editor/parser/ASTPHP5Scanner.java | 2172 +++--- .../modules/php/editor/parser/ASTPHP5Symbols.java | 3 +- .../php/editor/parser/EncodedActionTable1.java | 6298 ++++++++--------- .../php/editor/parser/EncodedActionTable10.java | 6914 +++++++++---------- .../php/editor/parser/EncodedActionTable11.java | 5614 +++++++-------- .../php/editor/parser/EncodedActionTable12.java | 5716 ++++++++-------- .../php/editor/parser/EncodedActionTable13.java | 6478 +++++++++--------- .../php/editor/parser/EncodedActionTable14.java | 5138 +++++++------- .../php/editor/parser/EncodedActionTable15.java | 6650 +++++++++--------- .../php/editor/parser/EncodedActionTable16.java | 5246 +++++++------- .../php/editor/parser/EncodedActionTable17.java | 5740 ++++++++-------- .../php/editor/parser/EncodedActionTable18.java | 6886 +++++++++---------- .../php/editor/parser/EncodedActionTable19.java | 5792 ++++++++-------- .../php/editor/parser/EncodedActionTable2.java | 2412 +++---- .../php/editor/parser/EncodedActionTable20.java | 5678 +++++++-------- .../php/editor/parser/EncodedActionTable21.java | 5433 ++++++++------- .../php/editor/parser/EncodedActionTable22.java | 1790 +++++ .../php/editor/parser/EncodedActionTable3.java | 3334 ++++----- .../php/editor/parser/EncodedActionTable4.java | 7232 ++++++++++---------- .../php/editor/parser/EncodedActionTable5.java | 6028 ++++++++-------- .../php/editor/parser/EncodedActionTable6.java | 5940 ++++++++-------- .../php/editor/parser/EncodedActionTable7.java | 5346 +++++++-------- .../php/editor/parser/EncodedActionTable8.java | 5582 +++++++-------- .../php/editor/parser/EncodedActionTable9.java | 4632 ++++++------- .../php/editor/parser/PHP5ErrorHandlerImpl.java | 340 +- .../netbeans/modules/php/editor/parser/Utils.java | 3 + .../php/editor/parser/astnodes/ArrayDimension.java | 19 +- .../editor/parser/astnodes/FieldsDeclaration.java | 130 +- .../editor/parser/astnodes/FormalParameter.java | 94 +- .../parser/astnodes/PropertyHookDeclaration.java | 199 + .../parser/astnodes/SingleFieldDeclaration.java | 83 +- .../php/editor/parser/astnodes/Visitor.java | 2 + .../astnodes/visitors/DefaultTreePathVisitor.java | 8 + .../parser/astnodes/visitors/DefaultVisitor.java | 11 + .../modules/php/editor/resources/enumCase.svg | 39 + .../netbeans/modules/php/editor/resources/hook.svg | 31 + .../modules/php/editor/resources/layer.xml | 1 - .../modules/php/editor/resources/trait.svg | 47 + .../typinghooks/PhpTypedBreakInterceptor.java | 54 +- .../ArrayDimensionSyntaxSuggestionHint.java | 306 - .../verification/ImmutableVariablesHint.java | 54 +- .../verification/ModifiersCheckHintError.java | 406 +- .../editor/verification/PHP84UnhandledError.java | 42 + .../editor/verification/WrongOrderOfArgsHint.java | 26 +- .../structure/deprecatedInheritedDeclarations.pass | 20 +- .../structure/nb3362/traitedTrait_01.pass | 12 + .../structure/nb3362/traitedTrait_02.pass | 12 + .../php84/testPropertyHooks/testPropertyHooks.pass | 99 + .../testPropertyHooks02/testPropertyHooks02.pass | 210 + .../testPropertyHooks03/testPropertyHooks03.pass | 108 + .../testPropertyHooks04/testPropertyHooks04.pass | 210 + .../testPropertyHooksAbstract.pass | 58 + .../testPropertyHooksInterface01.pass | 144 + .../testPropertyHooksTrait01.pass | 240 + .../structure/traitsStructure_01.pass | 1 + .../structure/traitsStructure_02.pass | 1 + .../lexer/php84/propertyHooks.pass | 854 +++ .../parser/php80/matchExpressionError_02.pass | 4 +- .../staticReturnTypeErrorWithParameterType_01.pass | 5 +- .../staticReturnTypeErrorWithParameterType_02.pass | 5 +- .../staticReturnTypeErrorWithParameterType_03.pass | 5 +- ...treatNamespacedNamesAsSingleTokenError_02a.pass | 4 +- ...treatNamespacedNamesAsSingleTokenError_03b.pass | 4 +- .../parser/php80/unionTypesError_03.pass | 5 +- ...pureIntersectionTypesWithUnionTypeError_02.pass | 24 +- ...pureIntersectionTypesWithUnionTypeError_03.pass | 28 +- .../php84/curlyBracesArrayAccessError01.pass | 35 + .../php84/curlyBracesArrayAccessError02.pass | 47 + .../php84/curlyBracesArrayAccessError03.pass | 35 + .../php84/curlyBracesArrayAccessError04.pass | 35 + .../parser/php84/propertyHooks.pass | 2841 ++++++++ .../parser/php84/propertyHooksAbstract.pass | 484 ++ .../parser/php84/propertyHooksCPP.pass | 2550 +++++++ .../parser/php84/propertyHooksInterface.pass | 782 +++ .../php84/propertyHooksInterfaceError_01.pass | 39 + .../parser/php84/propertyHooksTrait.pass | 2613 +++++++ .../parser/uniformVariableSyntax_34.pass | 1394 ++-- .../parser/uniformVariableSyntax_35.pass | 1462 ++-- .../parser/uniformVariableSyntax_36.pass | 51 +- .../blankLines/php84/BetweenPropertyHooks.php | 523 ++ ...ooks.php.testBetweenPropertyHooks_01a.formatted | 505 ++ ...ooks.php.testBetweenPropertyHooks_01b.formatted | 541 ++ .../blankLines/php84/EmptyPropertyHookBody.php | 101 + ...ody.php.testEmptyPropertyHookBody_01a.formatted | 83 + ...ody.php.testEmptyPropertyHookBody_01b.formatted | 127 + ...ody.php.testEmptyPropertyHookBody_02a.formatted | 81 + ...ody.php.testEmptyPropertyHookBody_02b.formatted | 81 + ...ody.php.testEmptyPropertyHookBody_02c.formatted | 81 + ...ody.php.testEmptyPropertyHookBody_03a.formatted | 125 + ...ody.php.testEmptyPropertyHookBody_03b.formatted | 147 + ...ody.php.testEmptyPropertyHookBody_03c.formatted | 115 + .../formatting/php84/propertyHooks_01.php | 537 ++ ...oks_01.php.testFieldDeclarationBP_01a.formatted | 501 ++ ...oks_01.php.testFieldDeclarationBP_01b.formatted | 601 ++ ...oks_01.php.testFieldDeclarationBP_01c.formatted | 601 ++ ...oks_01.php.testFieldDeclarationBP_01d.formatted | 511 ++ ...php.testPropertyHookDeclarationBP_01a.formatted | 501 ++ ...php.testPropertyHookDeclarationBP_01b.formatted | 544 ++ ...php.testPropertyHookDeclarationBP_01c.formatted | 544 ++ ...php.testPropertyHookDeclarationBP_01d.formatted | 508 ++ .../visibilityHookedInterfaceProperty_01.php} | 7 +- ...bilityHookedInterfaceProperty_01.php.formatted} | 7 +- .../visibilityHookedInterfaceProperty_02.php} | 7 +- ...bilityHookedInterfaceProperty_02.php.formatted} | 7 +- .../visibilityHookedInterfaceProperty_03.php} | 7 +- ...bilityHookedInterfaceProperty_03.php.formatted} | 7 +- .../selected/visibilityMethodWithEmptyBody_01.php} | 7 +- ...visibilityMethodWithEmptyBody_01.php.formatted} | 7 +- .../selected/visibilityMethodWithEmptyBody_02.php} | 7 +- ...visibilityMethodWithEmptyBody_02.php.formatted} | 7 +- .../selected/visibilityMethodWithEmptyBody_03.php} | 8 +- ...visibilityMethodWithEmptyBody_03.php.formatted} | 8 +- .../formatting/spaces/php84/propertyHooks_01.php | 523 ++ ...php.testFieldDeclarationLeftBrace_01a.formatted | 505 ++ ...php.testFieldDeclarationLeftBrace_01b.formatted | 505 ++ ..._01.php.testPropertyHookLeftBrace_01a.formatted | 505 ++ ..._01.php.testPropertyHookLeftBrace_01b.formatted | 505 ++ .../data/testfiles/indent/afterSemicolon_01.php | 16 + .../indent/afterSemicolon_01.php.indented | 17 + .../data/testfiles/indent/afterSemicolon_02.php | 7 + .../indent/afterSemicolon_02.php.indented | 8 + .../data/testfiles/indent/afterSemicolon_03.php | 22 + .../indent/afterSemicolon_03.php.indented | 23 + .../indent/functionCallWithAnonClass_01.php | 5 + .../functionCallWithAnonClass_01.php.indented | 7 + .../indent/functionCallWithAnonClass_02.php | 7 + .../functionCallWithAnonClass_02.php.indented | 8 + .../indent/functionCallWithAnonClass_03.php | 17 + .../functionCallWithAnonClass_03.php.indented | 18 + .../indent/functionCallWithAnonClass_04.php | 18 + .../functionCallWithAnonClass_04.php.indented | 19 + .../indent/functionCallWithLambda_01a.php | 5 + .../indent/functionCallWithLambda_01a.php.indented | 7 + .../indent/functionCallWithLambda_01b.php | 5 + .../indent/functionCallWithLambda_01b.php.indented | 7 + .../indent/functionCallWithLambda_02a.php | 6 + .../indent/functionCallWithLambda_02a.php.indented | 7 + .../indent/functionCallWithLambda_02b.php | 6 + .../indent/functionCallWithLambda_02b.php.indented | 7 + .../indent/functionCallWithLambda_03a.php | 6 + .../indent/functionCallWithLambda_03a.php.indented | 7 + .../indent/functionCallWithLambda_03b.php | 6 + .../indent/functionCallWithLambda_03b.php.indented | 7 + .../indent/functionCallWithLambda_04a.php | 7 + .../indent/functionCallWithLambda_04a.php.indented | 8 + .../indent/functionCallWithLambda_04b.php | 7 + .../indent/functionCallWithLambda_04b.php.indented | 8 + .../indent/functionCallWithVariable_01.php | 5 + .../functionCallWithVariable_01.php.indented | 6 + .../data/testfiles/indent/ifElseWithWhile_01.php | 7 + .../indent/ifElseWithWhile_01.php.indented | 9 + .../data/testfiles/indent/ifElseWithWhile_02.php | 9 + .../indent/ifElseWithWhile_02.php.indented | 10 + .../test/unit/data/testfiles/indent/ifElse_01.php | 5 + .../data/testfiles/indent/ifElse_01.php.indented | 7 + .../test/unit/data/testfiles/indent/ifElse_02.php | 7 + .../data/testfiles/indent/ifElse_02.php.indented | 8 + .../test/unit/data/testfiles/indent/ifElse_03.php | 7 + .../data/testfiles/indent/ifElse_03.php.indented | 9 + .../test/unit/data/testfiles/indent/ifElse_04.php | 9 + .../data/testfiles/indent/ifElse_04.php.indented | 10 + .../test/unit/data/testfiles/indent/ifElse_05.php | 7 + .../data/testfiles/indent/ifElse_05.php.indented | 9 + .../test/unit/data/testfiles/indent/ifElse_06.php | 10 + .../data/testfiles/indent/ifElse_06.php.indented | 12 + .../test/unit/data/testfiles/indent/ifElse_07.php | 14 + .../data/testfiles/indent/ifElse_07.php.indented | 16 + .../test/unit/data/testfiles/indent/ifElse_08.php | 16 + .../data/testfiles/indent/ifElse_08.php.indented | 18 + .../test/unit/data/testfiles/indent/ifElse_09.php | 12 + .../data/testfiles/indent/ifElse_09.php.indented | 14 + .../testfiles/indent/methodCallWithLambda_01.php | 5 + .../indent/methodCallWithLambda_01.php.indented | 7 + .../testfiles/indent/methodCallWithLambda_02.php | 6 + .../indent/methodCallWithLambda_02.php.indented | 7 + .../testfiles/indent/methodCallWithLambda_03.php | 6 + .../indent/methodCallWithLambda_03.php.indented | 7 + .../testfiles/indent/methodCallWithLambda_04.php | 7 + .../indent/methodCallWithLambda_04.php.indented | 8 + .../indent/multiline_function_call_27.php | 4 +- .../indent/multiline_function_call_27.php.indented | 4 +- .../php80/matchExpression_13.php} | 6 +- .../php80/matchExpression_13.php.indented} | 8 +- .../php80/matchExpression_14.php} | 10 +- .../php80/matchExpression_14.php.indented} | 11 +- .../php80/matchExpression_15.php} | 10 +- .../php80/matchExpression_15.php.indented} | 11 +- .../php80/matchExpression_16.php} | 11 +- .../php80/matchExpression_16.php.indented} | 12 +- .../testfiles/indent/php84/propertiesCPP_01.php | 8 + .../indent/php84/propertiesCPP_01.php.indented | 10 + .../testfiles/indent/php84/propertiesCPP_02.php | 9 + .../indent/php84/propertiesCPP_02.php.indented | 10 + .../testfiles/indent/php84/propertiesCPP_03.php | 9 + .../indent/php84/propertiesCPP_03.php.indented | 10 + .../testfiles/indent/php84/propertiesCPP_04.php | 10 + .../indent/php84/propertiesCPP_04.php.indented | 11 + .../testfiles/indent/php84/propertiesCPP_05.php | 11 + .../indent/php84/propertiesCPP_05.php.indented | 13 + .../testfiles/indent/php84/propertiesCPP_06.php | 9 + .../indent/php84/propertiesCPP_06.php.indented | 11 + .../testfiles/indent/php84/propertiesCPP_07.php | 12 + .../indent/php84/propertiesCPP_07.php.indented | 13 + .../testfiles/indent/php84/propertiesCPP_08.php | 12 + .../indent/php84/propertiesCPP_08.php.indented | 13 + .../testfiles/indent/php84/propertiesCPP_09.php | 9 + .../indent/php84/propertiesCPP_09.php.indented | 11 + .../testfiles/indent/php84/propertiesCPP_10.php | 11 + .../indent/php84/propertiesCPP_10.php.indented | 12 + .../testfiles/indent/php84/propertiesCPP_11.php | 9 + .../indent/php84/propertiesCPP_11.php.indented | 11 + .../testfiles/indent/php84/propertiesCPP_12.php | 11 + .../indent/php84/propertiesCPP_12.php.indented | 12 + .../testfiles/indent/php84/propertiesCPP_13.php | 10 + .../indent/php84/propertiesCPP_13.php.indented | 11 + .../indent/php84/propertiesInterface_01.php | 5 + .../php84/propertiesInterface_01.php.indented | 7 + .../indent/php84/propertiesInterface_02.php | 7 + .../php84/propertiesInterface_02.php.indented | 8 + .../indent/php84/propertiesInterface_03.php | 8 + .../php84/propertiesInterface_03.php.indented | 9 + .../indent/php84/propertiesInterface_04.php | 9 + .../php84/propertiesInterface_04.php.indented | 11 + .../indent/php84/propertiesInterface_05.php | 11 + .../php84/propertiesInterface_05.php.indented | 12 + .../indent/php84/propertiesInterface_06.php | 11 + .../php84/propertiesInterface_06.php.indented | 12 + .../data/testfiles/indent/php84/properties_01.php | 5 + .../indent/php84/properties_01.php.indented | 7 + .../data/testfiles/indent/php84/properties_02.php | 6 + .../indent/php84/properties_02.php.indented | 7 + .../data/testfiles/indent/php84/properties_03.php | 6 + .../indent/php84/properties_03.php.indented | 7 + .../data/testfiles/indent/php84/properties_04.php | 7 + .../indent/php84/properties_04.php.indented | 8 + .../data/testfiles/indent/php84/properties_05.php | 8 + .../indent/php84/properties_05.php.indented | 10 + .../data/testfiles/indent/php84/properties_06.php | 6 + .../indent/php84/properties_06.php.indented | 8 + .../data/testfiles/indent/php84/properties_07.php | 9 + .../indent/php84/properties_07.php.indented | 10 + .../data/testfiles/indent/php84/properties_08.php | 9 + .../indent/php84/properties_08.php.indented | 10 + .../data/testfiles/indent/php84/properties_09.php | 6 + .../indent/php84/properties_09.php.indented | 8 + .../data/testfiles/indent/php84/properties_10.php | 6 + .../indent/php84/properties_10.php.indented | 8 + .../data/testfiles/indent/php84/properties_11.php | 6 + .../indent/php84/properties_11.php.indented | 8 + .../data/testfiles/indent/php84/properties_12.php | 5 + .../indent/php84/properties_12.php.indented | 7 + .../data/testfiles/indent/php84/properties_13.php | 14 + .../indent/php84/properties_13.php.indented | 15 + .../testfiles/indent/php84/propertyHooksCPP_01.php | 9 + .../indent/php84/propertyHooksCPP_01.php.indented | 11 + .../testfiles/indent/php84/propertyHooksCPP_02.php | 10 + .../indent/php84/propertyHooksCPP_02.php.indented | 11 + .../testfiles/indent/php84/propertyHooksCPP_03.php | 11 + .../indent/php84/propertyHooksCPP_03.php.indented | 12 + .../testfiles/indent/php84/propertyHooksCPP_04.php | 11 + .../indent/php84/propertyHooksCPP_04.php.indented | 12 + .../testfiles/indent/php84/propertyHooksCPP_05.php | 11 + .../indent/php84/propertyHooksCPP_05.php.indented | 12 + .../testfiles/indent/php84/propertyHooksCPP_06.php | 11 + .../indent/php84/propertyHooksCPP_06.php.indented | 12 + .../testfiles/indent/php84/propertyHooksCPP_07.php | 12 + .../indent/php84/propertyHooksCPP_07.php.indented | 14 + .../testfiles/indent/php84/propertyHooksCPP_08.php | 13 + .../indent/php84/propertyHooksCPP_08.php.indented | 14 + .../testfiles/indent/php84/propertyHooksCPP_09.php | 9 + .../indent/php84/propertyHooksCPP_09.php.indented | 10 + .../testfiles/indent/php84/propertyHooksCPP_10.php | 10 + .../indent/php84/propertyHooksCPP_10.php.indented | 12 + .../testfiles/indent/php84/propertyHooksCPP_11.php | 9 + .../indent/php84/propertyHooksCPP_11.php.indented | 11 + .../indent/php84/propertyHooksWithCatch_01.php | 11 + .../php84/propertyHooksWithCatch_01.php.indented | 13 + .../indent/php84/propertyHooksWithDo_01.php | 9 + .../php84/propertyHooksWithDo_01.php.indented | 11 + .../indent/php84/propertyHooksWithFinally_01.php | 13 + .../php84/propertyHooksWithFinally_01.php.indented | 15 + .../indent/php84/propertyHooksWithFor_01.php | 9 + .../php84/propertyHooksWithFor_01.php.indented | 11 + .../indent/php84/propertyHooksWithForeach_01.php | 9 + .../php84/propertyHooksWithForeach_01.php.indented | 11 + .../indent/php84/propertyHooksWithFunction_01.php | 9 + .../propertyHooksWithFunction_01.php.indented | 11 + .../indent/php84/propertyHooksWithFunction_02.php | 11 + .../propertyHooksWithFunction_02.php.indented | 12 + .../indent/php84/propertyHooksWithIf_01.php | 10 + .../php84/propertyHooksWithIf_01.php.indented | 12 + .../indent/php84/propertyHooksWithMatch_01.php | 9 + .../php84/propertyHooksWithMatch_01.php.indented | 11 + .../indent/php84/propertyHooksWithTry_01.php | 9 + .../php84/propertyHooksWithTry_01.php.indented | 13 + .../indent/php84/propertyHooksWithWhile_01.php | 10 + .../php84/propertyHooksWithWhile_01.php.indented | 12 + .../testfiles/indent/php84/propertyHooks_01.php | 7 + .../indent/php84/propertyHooks_01.php.indented | 9 + .../testfiles/indent/php84/propertyHooks_02.php | 8 + .../indent/php84/propertyHooks_02.php.indented | 9 + .../testfiles/indent/php84/propertyHooks_03.php | 9 + .../indent/php84/propertyHooks_03.php.indented | 10 + .../testfiles/indent/php84/propertyHooks_04.php | 9 + .../indent/php84/propertyHooks_04.php.indented | 10 + .../testfiles/indent/php84/propertyHooks_05.php | 9 + .../indent/php84/propertyHooks_05.php.indented | 10 + .../testfiles/indent/php84/propertyHooks_06.php | 9 + .../indent/php84/propertyHooks_06.php.indented | 10 + .../testfiles/indent/php84/propertyHooks_07.php | 10 + .../indent/php84/propertyHooks_07.php.indented | 12 + .../testfiles/indent/php84/propertyHooks_08.php | 11 + .../indent/php84/propertyHooks_08.php.indented | 12 + .../testfiles/indent/php84/propertyHooks_09.php | 7 + .../indent/php84/propertyHooks_09.php.indented | 8 + .../testfiles/indent/php84/propertyHooks_10.php | 8 + .../indent/php84/propertyHooks_10.php.indented | 10 + .../testfiles/indent/php84/propertyHooks_11.php | 10 + .../indent/php84/propertyHooks_11.php.indented | 12 + .../testfiles/indent/php84/propertyHooks_12.php | 11 + .../indent/php84/propertyHooks_12.php.indented | 12 + .../testfiles/indent/php84/propertyHooks_13.php | 7 + .../indent/php84/propertyHooks_13.php.indented | 8 + .../index/testGetEnums/testGetEnums.php.indexed | 50 +- .../testPHP74TypedPropertiesClass.php.indexed | 66 +- .../testPHP74TypedPropertiesTrait.php.indexed | 66 +- ...stPHP80ConstructorPropertyPromotion.php.indexed | 52 +- .../testPHP80UnionTypesTypes.php.indexed | 12 +- .../testPHP81PureIntersectionTypes.php.indexed | 4 +- .../testPHP82DNFParameterTypes.php.indexed | 2 +- .../testPHP82DNFReturnTypes.php.indexed | 2 +- .../testPHP83TypedClassConstants.php.indexed | 2 +- .../testPHP84PropertyHooks.php | 155 + .../testPHP84PropertyHooks.php.indexed | 208 + .../testPHP84PropertyHooksAbstract.php} | 39 +- .../testPHP84PropertyHooksAbstract.php.indexed | 51 + .../testPHP84PropertyHooksCPP.php | 141 + .../testPHP84PropertyHooksCPP.php.indexed | 177 + .../testPHP84PropertyHooksInterface.php | 63 + .../testPHP84PropertyHooksInterface.php.indexed | 77 + .../testPHP84PropertyHooksTrait.php | 147 + .../testPHP84PropertyHooksTrait.php.indexed | 186 + .../data/testfiles/lexer/php84/propertyHooks.php | 155 + .../data/testfiles/model/php84/propertyHooks.php | 128 + .../php84/propertyHooksAbstract.php} | 44 +- .../php84/propertyHooksInterface01.php} | 15 +- .../php84/propertyHooksInterface02.php} | 64 +- .../model/php84/propertyHooksInterface03.php | 65 + .../testfiles/model/php84/propertyHooksTrait01.php | 153 + .../testfiles/parser/binaryNotation_04.php.errors | 4 +- .../parser/constantArrayAccess_02.php.errors | 4 +- .../parser/constantArrayAccess_03.php.errors | 4 +- .../testfiles/parser/functionCallParam.php.errors | 4 +- .../testfiles/parser/issue190105_02.php.errors | 4 +- .../testfiles/parser/issue211165_01.php.errors | 4 +- .../testfiles/parser/issue211165_02.php.errors | 4 +- .../testfiles/parser/issue211165_03.php.errors | 4 +- .../testfiles/parser/issue211165_04.php.errors | 4 +- .../testfiles/parser/issue211165_05.php.errors | 4 +- .../testfiles/parser/issue211165_06.php.errors | 16 +- .../testfiles/parser/issue211165_07.php.errors | 4 +- .../testfiles/parser/issue211165_08.php.errors | 4 +- .../testfiles/parser/issue211165_09.php.errors | 4 +- .../php73/functionCallTrailingCommas_02.php.errors | 4 +- .../php73/functionCallTrailingCommas_03.php.errors | 4 +- .../php73/functionCallTrailingCommas_04.php.errors | 4 +- .../php73/heredoc_new_line_error_01.php.errors | 4 +- .../php73/heredoc_new_line_error_02.php.errors | 6 +- .../php73/nowdoc_new_line_error_01.php.errors | 4 +- .../php73/nowdoc_new_line_error_02.php.errors | 6 +- .../php74/arrowFunctionsParseError_01.php.errors | 4 +- .../php74/arrowFunctionsParseError_02.php.errors | 4 +- .../php74/arrowFunctionsParseError_04.php.errors | 4 +- ...numericLiteralSeparatorParseError_01.php.errors | 4 +- ...numericLiteralSeparatorParseError_02.php.errors | 4 +- ...numericLiteralSeparatorParseError_03.php.errors | 4 +- ...numericLiteralSeparatorParseError_04.php.errors | 4 +- ...numericLiteralSeparatorParseError_05.php.errors | 4 +- ...numericLiteralSeparatorParseError_06.php.errors | 4 +- ...numericLiteralSeparatorParseError_07.php.errors | 4 +- ...numericLiteralSeparatorParseError_08.php.errors | 4 +- .../spreadOperatorInArrayExpression_03.php.errors | 6 +- .../spreadOperatorInArrayExpression_04.php.errors | 6 +- .../php80/attributeSyntaxError_01.php.errors | 4 +- .../php80/attributeSyntaxError_02.php.errors | 4 +- ...ctorPropertyPromotionErrorWithStatic.php.errors | 4 +- .../php80/matchExpressionError_01.php.errors | 4 +- .../php80/matchExpressionError_02.php.errors | 10 +- .../php80/matchExpressionError_03.php.errors | 4 +- .../php80/matchExpressionError_04.php.errors | 4 +- .../php80/matchExpressionError_05.php.errors | 4 +- .../php80/matchExpressionError_06.php.errors | 4 +- .../parser/php80/mixedTypeError_01.php.errors | 4 +- ...taticReturnTypeErrorWithFieldType_01.php.errors | 4 +- ...taticReturnTypeErrorWithFieldType_02.php.errors | 4 +- ...cReturnTypeErrorWithParameterType_01.php.errors | 7 +- ...cReturnTypeErrorWithParameterType_02.php.errors | 7 +- ...cReturnTypeErrorWithParameterType_03.php.errors | 7 +- ...amespacedNamesAsSingleTokenError_01a.php.errors | 4 +- ...amespacedNamesAsSingleTokenError_01b.php.errors | 4 +- ...amespacedNamesAsSingleTokenError_02a.php.errors | 12 +- ...amespacedNamesAsSingleTokenError_02b.php.errors | 6 +- ...amespacedNamesAsSingleTokenError_03a.php.errors | 6 +- ...amespacedNamesAsSingleTokenError_03b.php.errors | 12 +- .../parser/php80/unionTypesError_01.php.errors | 4 +- .../parser/php80/unionTypesError_02.php.errors | 4 +- .../parser/php80/unionTypesError_03.php.errors | 7 +- .../parser/php81/enumCasesWithError.php.errors | 4 +- ...lIntegerLiteralNotationParseError_01.php.errors | 4 +- ...lIntegerLiteralNotationParseError_02.php.errors | 4 +- ...lIntegerLiteralNotationParseError_03.php.errors | 4 +- ...lIntegerLiteralNotationParseError_04.php.errors | 4 +- ...lIntegerLiteralNotationParseError_05.php.errors | 4 +- ...lIntegerLiteralNotationParseError_06.php.errors | 4 +- ...InInitializersWithClassConstantError.php.errors | 4 +- .../newInInitializersWithPropertyError.php.errors | 4 +- ...tersectionTypesWithUnionTypeError_01.php.errors | 4 +- ...tersectionTypesWithUnionTypeError_02.php.errors | 14 +- ...tersectionTypesWithUnionTypeError_03.php.errors | 14 +- .../parser/php82/readonlyEnumError_01.php.errors | 2 + .../parser/php84/curlyBracesArrayAccessError01.php | 3 + .../php84/curlyBracesArrayAccessError01.php.errors | 8 + .../parser/php84/curlyBracesArrayAccessError02.php | 3 + .../php84/curlyBracesArrayAccessError02.php.errors | 8 + .../parser/php84/curlyBracesArrayAccessError03.php | 3 + .../php84/curlyBracesArrayAccessError03.php.errors | 10 + .../parser/php84/curlyBracesArrayAccessError04.php | 3 + .../php84/curlyBracesArrayAccessError04.php.errors | 8 + .../parser/php84/curlyBracesArrayAccessError05.php | 3 + .../php84/curlyBracesArrayAccessError05.php.errors | 7 + .../php84/newWithoutParenthesesError_02.php.errors | 4 +- .../php84/newWithoutParenthesesError_03.php.errors | 4 +- .../php84/newWithoutParenthesesError_04.php.errors | 4 +- .../php84/newWithoutParenthesesError_05.php.errors | 4 +- .../php84/newWithoutParenthesesError_06.php.errors | 4 +- .../php84/newWithoutParenthesesError_07.php.errors | 4 +- .../php84/newWithoutParenthesesError_08.php.errors | 4 +- .../php84/newWithoutParenthesesError_09.php.errors | 4 +- .../data/testfiles/parser/php84/propertyHooks.php | 155 + .../parser/php84/propertyHooks.php.errors | 1 + .../php84/propertyHooksAbstract.php} | 39 +- .../parser/php84/propertyHooksAbstract.php.errors | 1 + .../testfiles/parser/php84/propertyHooksCPP.php | 141 + .../parser/php84/propertyHooksCPP.php.errors | 1 + .../parser/php84/propertyHooksInterface.php | 63 + .../parser/php84/propertyHooksInterface.php.errors | 1 + .../php84/propertyHooksInterfaceError_01.php} | 6 +- .../propertyHooksInterfaceError_01.php.errors | 10 + .../testfiles/parser/php84/propertyHooksTrait.php | 147 + .../parser/php84/propertyHooksTrait.php.errors | 1 + .../testfiles/parser/uniformVariableSyntax_34.php | 4 - .../parser/uniformVariableSyntax_34.php.errors | 1 + .../testfiles/parser/uniformVariableSyntax_35.php | 4 - .../parser/uniformVariableSyntax_35.php.errors | 1 + .../testfiles/parser/uniformVariableSyntax_36.php | 1 - .../parser/uniformVariableSyntax_36.php.errors | 1 + .../unit/data/testfiles/propertyHooks.php.folds | 156 + .../data/testfiles/propertyHooksAbstract.php.folds | 48 + .../unit/data/testfiles/propertyHooksCPP.php.folds | 142 + .../testfiles/propertyHooksInterface.php.folds | 64 + .../data/testfiles/propertyHooksTrait.php.folds | 148 + .../uniformVariableSyntax_01.php | 4 - .../uniformVariableSyntax_01.php.semantic | 4 - .../uniformVariableSyntax_02.php | 4 - .../uniformVariableSyntax_02.php.semantic | 4 - .../php84/propertyHooksInterface01.php} | 15 +- .../php84/propertyHooksInterface02.php} | 64 +- .../php84/testPropertyHooks/testPropertyHooks.php | 128 + .../testPropertyHooks02/testPropertyHooks02.php | 102 + .../php84/testPropertyHooks03/AbstractClass.php} | 35 +- .../php84/testPropertyHooks03/Interface1.php} | 11 +- .../php84/testPropertyHooks03/Interface2.php} | 14 +- .../php84/testPropertyHooks03/Interface3.php} | 14 +- .../php84/testPropertyHooks03/Trait1.php} | 10 +- .../php84/testPropertyHooks03/Trait2.php} | 9 +- .../php84/testPropertyHooks03/Trait3.php} | 9 +- .../testPropertyHooks03/testPropertyHooks03.php} | 29 +- .../testPropertyHooks04/testPropertyHooks04.php | 118 + .../testPropertyHooksAbstract.php} | 47 +- .../testPropertyHooksInterface01.php | 65 + .../testPropertyHooksTrait01.php | 153 + ...CurlyBraces.php.testDeprecatedCurlyBraces.hints | 90 - .../deprecatedCurlyBraces_03.php | 22 - ...s_03.php.testDeprecatedCurlyBracesFix_03a.fixed | 22 - ...s_03.php.testDeprecatedCurlyBracesFix_03b.fixed | 22 - ...s_03.php.testDeprecatedCurlyBracesFix_03c.fixed | 22 - .../deprecatedCurlyBraces_04.php | 22 - ...es_04.php.testDeprecatedCurlyBracesFix_04.fixed | 22 - .../deprecatedCurlyBraces_05.php | 22 - ...es_05.php.testDeprecatedCurlyBracesFix_05.fixed | 22 - .../deprecatedCurlyBraces_06.php | 22 - ...es_06.php.testDeprecatedCurlyBracesFix_06.fixed | 22 - .../deprecatedCurlyBraces_07.php | 22 - ...es_07.php.testDeprecatedCurlyBracesFix_07.fixed | 22 - .../deprecatedCurlyBraces_08.php | 22 - ...es_08.php.testDeprecatedCurlyBracesFix_08.fixed | 22 - .../deprecatedCurlyBraces_09.php | 22 - ...es_09.php.testDeprecatedCurlyBracesFix_09.fixed | 22 - .../deprecatedCurlyBraces_10.php | 22 - ...es_10.php.testDeprecatedCurlyBracesFix_10.fixed | 22 - .../deprecatedCurlyBraces_11.php | 22 - ...es_11.php.testDeprecatedCurlyBracesFix_11.fixed | 22 - .../testPropertyHooks_01.php} | 14 +- ...stPropertyHooksWith1AllowedAssignments_01.hints | 1 + .../testPropertyHooks_02.php} | 14 +- ...stPropertyHooksWith1AllowedAssignments_02.hints | 14 + ...fiersCheckHint.php.testModifiersCheckHint.hints | 8 +- .../testPropertyHooksAbstractInvalid.php} | 13 +- ...alid.php.testPropertyHooksAbstractInvalid.hints | 15 + ....testPropertyHooksAbstractInvalid_Fix01a.fixed} | 13 +- ....testPropertyHooksAbstractInvalid_Fix01b.fixed} | 13 +- ...p.testPropertyHooksAbstractInvalid_Fix02.fixed} | 30 +- .../testPropertyHooksAbstractValid.php} | 33 +- ...tValid.php.testPropertyHooksAbstractValid.hints | 1 + .../testPropertyHooksCPPInvalid.php | 58 + ...PPInvalid.php.testPropertyHooksCPPInvalid.hints | 22 + ...lid.php.testPropertyHooksCPPInvalid_Fix01.fixed | 58 + ...lid.php.testPropertyHooksCPPInvalid_Fix02.fixed | 58 + ...lid.php.testPropertyHooksCPPInvalid_Fix03.fixed | 58 + ...lid.php.testPropertyHooksCPPInvalid_Fix04.fixed | 58 + .../testPropertyHooksCPPValid.php | 116 + ...oksCPPValid.php.testPropertyHooksCPPValid.hints | 1 + .../testPropertyHooksInterfaceInvalid.php} | 47 +- ...lid.php.testPropertyHooksInterfaceInvalid.hints | 48 + ....testPropertyHooksInterfaceInvalid_Fix01.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix02.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix03.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix04.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix05.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix06.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix07.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix08.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix09.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix10.fixed} | 47 +- ....testPropertyHooksInterfaceInvalid_Fix11.fixed} | 47 +- .../testPropertyHooksInterfaceValid.php} | 16 +- ...Valid.php.testPropertyHooksInterfaceValid.hints | 1 + .../testPropertyHooksInvalid.php | 56 + ...HooksInvalid.php.testPropertyHooksInvalid.hints | 26 + ...nvalid.php.testPropertyHooksInvalid_Fix01.fixed | 56 + ...nvalid.php.testPropertyHooksInvalid_Fix02.fixed | 56 + ...nvalid.php.testPropertyHooksInvalid_Fix03.fixed | 56 + ...nvalid.php.testPropertyHooksInvalid_Fix04.fixed | 56 + ...nvalid.php.testPropertyHooksInvalid_Fix05.fixed | 56 + .../testPropertyHooksTraitInvalid.php | 64 + ...Invalid.php.testPropertyHooksTraitInvalid.hints | 31 + ...d.php.testPropertyHooksTraitInvalid_Fix01.fixed | 64 + ...d.php.testPropertyHooksTraitInvalid_Fix02.fixed | 64 + ...d.php.testPropertyHooksTraitInvalid_Fix03.fixed | 64 + ...d.php.testPropertyHooksTraitInvalid_Fix04.fixed | 64 + ...d.php.testPropertyHooksTraitInvalid_Fix05.fixed | 64 + ....php.testPropertyHooksTraitInvalid_Fix06a.fixed | 64 + ....php.testPropertyHooksTraitInvalid_Fix06b.fixed | 64 + .../testPropertyHooksTraitValid.php | 117 + ...raitValid.php.testPropertyHooksTraitValid.hints | 1 + .../testPropertyHooksValid.php | 126 + ...ertyHooksValid.php.testPropertyHooksValid.hints | 1 + .../testConstructorPropertyPromotion.php | 4 +- ...hp.testConstructorPropertyPromotionFix_01.fixed | 4 +- ...hp.testConstructorPropertyPromotionFix_02.fixed | 4 +- ...hp.testConstructorPropertyPromotionFix_03.fixed | 4 +- ...hp.testConstructorPropertyPromotionFix_04.fixed | 4 +- .../testConstructorPropertyPromotionMultiLines.php | 4 +- ...structorPropertyPromotionMultiLinesFix_01.fixed | 4 +- ...structorPropertyPromotionMultiLinesFix_02.fixed | 4 +- ...structorPropertyPromotionMultiLinesFix_03.fixed | 4 +- ...structorPropertyPromotionMultiLinesFix_04.fixed | 4 +- ...ropertyPromotionMultiLinesWithPropertyHooks.php | 176 + ...pertyPromotionMultiLinesWithPropertyHooks.hints | 20 + ...romotionMultiLinesWithPropertyHooksFix_01.fixed | 176 + ...romotionMultiLinesWithPropertyHooksFix_02.fixed | 176 + ...romotionMultiLinesWithPropertyHooksFix_03.fixed | 176 + ...romotionMultiLinesWithPropertyHooksFix_04.fixed | 176 + ...structorPropertyPromotionWithPropertyHooks.php} | 16 +- ...tructorPropertyPromotionWithPropertyHooks.hints | 16 + ...PropertyPromotionWithPropertyHooksFix_01.fixed} | 16 +- ...PropertyPromotionWithPropertyHooksFix_02.fixed} | 16 +- ...PropertyPromotionWithPropertyHooksFix_03.fixed} | 16 +- ...PropertyPromotionWithPropertyHooksFix_04.fixed} | 16 +- ...gsHint.php.testWrongOrderOfArgsHintFix_01.fixed | 2 +- ...gsHint.php.testWrongOrderOfArgsHintFix_02.fixed | 2 +- .../modules/php/editor/csl/FoldingTest.java | 21 + .../modules/php/editor/csl/NavigatorPHP84Test.java | 71 + .../php/editor/csl/PhpNavigatorTestBase.java | 31 +- .../editor/indent/PHPFormatterBlankLinesTest.java | 73 + .../php/editor/indent/PHPFormatterSpacesTest.java | 24 + .../php/editor/indent/PHPFormatterTest.java | 80 +- .../php/editor/indent/PHPNewLineIndenterTest.java | 430 +- .../modules/php/editor/index/PHPIndexTest.java | 21 + .../php/editor/lexer/PHP84FeaturesTest.java | 4 + .../modules/php/editor/model/impl/ModelTest.java | 515 ++ .../php/editor/model/impl/ModelTestBase.java | 4 +- .../php/editor/parser/ASTPHP5ParserTest.java | 45 +- .../php/editor/parser/PhpParserErrorTest.java | 49 +- .../modules/php/editor/parser/PrintASTVisitor.java | 69 +- .../typinghooks/PhpCommentGeneratorTest.java | 72 +- .../typinghooks/PhpTypedBreakInterceptorTest.java | 227 + .../ArrayDimensionSyntaxSuggestionHintTest.java | 105 - .../verification/ImmutableVariablesHintTest.java | 8 + .../verification/ModifiersCheckHintErrorTest.java | 161 + .../verification/WrongOrderOfArgsHintTest.java | 82 + php/php.editor/tools/ASTPHP5Parser.cup | 209 +- php/php.editor/tools/ASTPHP5Scanner.flex | 4 + php/php.editor/tools/Php5ColoringScanner.flex | 4 + 656 files changed, 105065 insertions(+), 69129 deletions(-) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
