@@ -14,12 +14,13 @@ inline constexpr uint32_t nodeCallback = 0;
1414inline constexpr uint32_t properties = 1 ;
1515inline constexpr uint32_t methods = 2 ;
1616inline constexpr uint32_t methodCalls = 3 ;
17- inline constexpr uint32_t propertyUsages = 4 ;
18- inline constexpr uint32_t constants = 5 ;
19- inline constexpr uint32_t constantFetches = 6 ;
20- inline constexpr uint32_t returnStatementNodes = 7 ;
21- inline constexpr uint32_t propertyAssigns = 8 ;
22- inline constexpr uint32_t classReflection = 9 ;
17+ inline constexpr uint32_t methodVariableWrites = 4 ;
18+ inline constexpr uint32_t propertyUsages = 5 ;
19+ inline constexpr uint32_t constants = 6 ;
20+ inline constexpr uint32_t constantFetches = 7 ;
21+ inline constexpr uint32_t returnStatementNodes = 8 ;
22+ inline constexpr uint32_t propertyAssigns = 9 ;
23+ inline constexpr uint32_t classReflection = 10 ;
2324} // namespace slot
2425
2526inline void declareClass (reg::Class &cls)
@@ -34,6 +35,7 @@ inline void declareProperties(reg::Class &cls)
3435 cls.property (" properties" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
3536 cls.property (" methods" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
3637 cls.property (" methodCalls" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
38+ cls.property (" methodVariableWrites" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
3739 cls.property (" propertyUsages" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
3840 cls.property (" constants" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
3941 cls.property (" constantFetches" , ZEND_ACC_PRIVATE , reg::PropertyKind::TypedEmptyArray, MAY_BE_ARRAY );
@@ -53,49 +55,51 @@ inline constexpr char strings[] =
5355 " getProperties\0 " /* 77 */
5456 " getMethods\0 " /* 91 */
5557 " getMethodCalls\0 " /* 102 */
56- " getPropertyUsages\0 " /* 117 */
57- " getConstants\0 " /* 135 */
58- " getConstantFetches\0 " /* 148 */
59- " getReturnStatementsNodes\0 " /* 167 */
60- " getPropertyAssigns\0 " /* 192 */
61- " node\0 " /* 211 */
62- " PhpParser\\ Node\0 " /* 216 */
63- " scope\0 " /* 231 */
64- " PHPStan\\ Analyser\\ Scope\0 " /* 237 */
65- " __invoke\0 " /* 260 */
66- " gatherNodes\0 " /* 269 */
67- " PhpParser\\ Node\\ Expr\\ FuncCall\0 " /* 281 */
68- " tryToApplyPropertyReads\0 " /* 310 */
69- " PhpParser\\ Node\\ Expr\\ Variable\0 " /* 334 */
70- " tryToApplyPromotedParameterRead\0 " /* 363 */
71- " ancestorConstructorCall\0 " /* 395 */
72- " PhpParser\\ Node\\ Expr\\ StaticCall\0 " /* 419 */
73- " tryToApplyPropertyWritesFromAncestorConstructor" ; /* 450 */
58+ " getMethodVariableWrites\0 " /* 117 */
59+ " getPropertyUsages\0 " /* 141 */
60+ " getConstants\0 " /* 159 */
61+ " getConstantFetches\0 " /* 172 */
62+ " getReturnStatementsNodes\0 " /* 191 */
63+ " getPropertyAssigns\0 " /* 216 */
64+ " node\0 " /* 235 */
65+ " PhpParser\\ Node\0 " /* 240 */
66+ " scope\0 " /* 255 */
67+ " PHPStan\\ Analyser\\ Scope\0 " /* 261 */
68+ " __invoke\0 " /* 284 */
69+ " gatherNodes\0 " /* 293 */
70+ " PhpParser\\ Node\\ Expr\\ FuncCall\0 " /* 305 */
71+ " tryToApplyPropertyReads\0 " /* 334 */
72+ " PhpParser\\ Node\\ Expr\\ Variable\0 " /* 358 */
73+ " tryToApplyPromotedParameterRead\0 " /* 387 */
74+ " ancestorConstructorCall\0 " /* 419 */
75+ " PhpParser\\ Node\\ Expr\\ StaticCall\0 " /* 443 */
76+ " tryToApplyPropertyWritesFromAncestorConstructor" ; /* 474 */
7477inline constexpr reg::PackedArg args[] = {
7578 reg::packed (0 , 0 , 16 ), /* __construct $classReflection */
7679 reg::packed (51 , MAY_BE_CALLABLE ), /* __construct $nodeCallback */
7780 reg::packed (76 , MAY_BE_ARRAY ), /* getProperties return */
7881 reg::packed (76 , MAY_BE_ARRAY ), /* getMethods return */
7982 reg::packed (76 , MAY_BE_ARRAY ), /* getMethodCalls return */
83+ reg::packed (76 , MAY_BE_ARRAY ), /* getMethodVariableWrites return */
8084 reg::packed (76 , MAY_BE_ARRAY ), /* getPropertyUsages return */
8185 reg::packed (76 , MAY_BE_ARRAY ), /* getConstants return */
8286 reg::packed (76 , MAY_BE_ARRAY ), /* getConstantFetches return */
8387 reg::packed (76 , MAY_BE_ARRAY ), /* getReturnStatementsNodes return */
8488 reg::packed (76 , MAY_BE_ARRAY ), /* getPropertyAssigns return */
85- reg::packed (211 , 0 , 216 ), /* __invoke $node */
86- reg::packed (231 , 0 , 237 ), /* __invoke $scope */
89+ reg::packed (235 , 0 , 240 ), /* __invoke $node */
90+ reg::packed (255 , 0 , 261 ), /* __invoke $scope */
8791 reg::packed (76 , MAY_BE_VOID ), /* __invoke return */
88- reg::packed (211 , 0 , 216 ), /* gatherNodes $node */
89- reg::packed (231 , 0 , 237 ), /* gatherNodes $scope */
92+ reg::packed (235 , 0 , 240 ), /* gatherNodes $node */
93+ reg::packed (255 , 0 , 261 ), /* gatherNodes $scope */
9094 reg::packed (76 , MAY_BE_VOID ), /* gatherNodes return */
91- reg::packed (211 , 0 , 281 ), /* tryToApplyPropertyReads $node */
92- reg::packed (231 , 0 , 237 ), /* tryToApplyPropertyReads $scope */
95+ reg::packed (235 , 0 , 305 ), /* tryToApplyPropertyReads $node */
96+ reg::packed (255 , 0 , 261 ), /* tryToApplyPropertyReads $scope */
9397 reg::packed (76 , MAY_BE_VOID ), /* tryToApplyPropertyReads return */
94- reg::packed (211 , 0 , 334 ), /* tryToApplyPromotedParameterRead $node */
95- reg::packed (231 , 0 , 237 ), /* tryToApplyPromotedParameterRead $scope */
98+ reg::packed (235 , 0 , 358 ), /* tryToApplyPromotedParameterRead $node */
99+ reg::packed (255 , 0 , 261 ), /* tryToApplyPromotedParameterRead $scope */
96100 reg::packed (76 , MAY_BE_VOID ), /* tryToApplyPromotedParameterRead return */
97- reg::packed (395 , 0 , 419 ), /* tryToApplyPropertyWritesFromAncestorConstructor $ancestorConstructorCall */
98- reg::packed (231 , 0 , 237 ), /* tryToApplyPropertyWritesFromAncestorConstructor $scope */
101+ reg::packed (419 , 0 , 443 ), /* tryToApplyPropertyWritesFromAncestorConstructor $ancestorConstructorCall */
102+ reg::packed (255 , 0 , 261 ), /* tryToApplyPropertyWritesFromAncestorConstructor $scope */
99103 reg::packed (76 , MAY_BE_VOID ), /* tryToApplyPropertyWritesFromAncestorConstructor return */
100104};
101105using Sig = reg::Sig<strings, args>;
@@ -107,16 +111,17 @@ inline constexpr sigtab::Sig __construct = { { 64 /* __construct */, 2, 0, 2, re
107111inline constexpr sigtab::Sig getProperties = { { 77 /* getProperties */ , 0 , 2 , 0 , 2 , ZEND_ACC_PUBLIC } };
108112inline constexpr sigtab::Sig getMethods = { { 91 /* getMethods */ , 0 , 3 , 0 , 3 , ZEND_ACC_PUBLIC } };
109113inline constexpr sigtab::Sig getMethodCalls = { { 102 /* getMethodCalls */ , 0 , 4 , 0 , 4 , ZEND_ACC_PUBLIC } };
110- inline constexpr sigtab::Sig getPropertyUsages = { { 117 /* getPropertyUsages */ , 0 , 5 , 0 , 5 , ZEND_ACC_PUBLIC } };
111- inline constexpr sigtab::Sig getConstants = { { 135 /* getConstants */ , 0 , 6 , 0 , 6 , ZEND_ACC_PUBLIC } };
112- inline constexpr sigtab::Sig getConstantFetches = { { 148 /* getConstantFetches */ , 0 , 7 , 0 , 7 , ZEND_ACC_PUBLIC } };
113- inline constexpr sigtab::Sig getReturnStatementsNodes = { { 167 /* getReturnStatementsNodes */ , 0 , 8 , 0 , 8 , ZEND_ACC_PUBLIC } };
114- inline constexpr sigtab::Sig getPropertyAssigns = { { 192 /* getPropertyAssigns */ , 0 , 9 , 0 , 9 , ZEND_ACC_PUBLIC } };
115- inline constexpr sigtab::Sig __invoke = { { 260 /* __invoke */ , 2 , 10 , 2 , 12 , ZEND_ACC_PUBLIC } };
116- inline constexpr sigtab::Sig gatherNodes = { { 269 /* gatherNodes */ , 2 , 13 , 2 , 15 , ZEND_ACC_PRIVATE } };
117- inline constexpr sigtab::Sig tryToApplyPropertyReads = { { 310 /* tryToApplyPropertyReads */ , 2 , 16 , 2 , 18 , ZEND_ACC_PRIVATE } };
118- inline constexpr sigtab::Sig tryToApplyPromotedParameterRead = { { 363 /* tryToApplyPromotedParameterRead */ , 2 , 19 , 2 , 21 , ZEND_ACC_PRIVATE } };
119- inline constexpr sigtab::Sig tryToApplyPropertyWritesFromAncestorConstructor = { { 450 /* tryToApplyPropertyWritesFromAncestorConstructor */ , 2 , 22 , 2 , 24 , ZEND_ACC_PRIVATE } };
114+ inline constexpr sigtab::Sig getMethodVariableWrites = { { 117 /* getMethodVariableWrites */ , 0 , 5 , 0 , 5 , ZEND_ACC_PUBLIC } };
115+ inline constexpr sigtab::Sig getPropertyUsages = { { 141 /* getPropertyUsages */ , 0 , 6 , 0 , 6 , ZEND_ACC_PUBLIC } };
116+ inline constexpr sigtab::Sig getConstants = { { 159 /* getConstants */ , 0 , 7 , 0 , 7 , ZEND_ACC_PUBLIC } };
117+ inline constexpr sigtab::Sig getConstantFetches = { { 172 /* getConstantFetches */ , 0 , 8 , 0 , 8 , ZEND_ACC_PUBLIC } };
118+ inline constexpr sigtab::Sig getReturnStatementsNodes = { { 191 /* getReturnStatementsNodes */ , 0 , 9 , 0 , 9 , ZEND_ACC_PUBLIC } };
119+ inline constexpr sigtab::Sig getPropertyAssigns = { { 216 /* getPropertyAssigns */ , 0 , 10 , 0 , 10 , ZEND_ACC_PUBLIC } };
120+ inline constexpr sigtab::Sig __invoke = { { 284 /* __invoke */ , 2 , 11 , 2 , 13 , ZEND_ACC_PUBLIC } };
121+ inline constexpr sigtab::Sig gatherNodes = { { 293 /* gatherNodes */ , 2 , 14 , 2 , 16 , ZEND_ACC_PRIVATE } };
122+ inline constexpr sigtab::Sig tryToApplyPropertyReads = { { 334 /* tryToApplyPropertyReads */ , 2 , 17 , 2 , 19 , ZEND_ACC_PRIVATE } };
123+ inline constexpr sigtab::Sig tryToApplyPromotedParameterRead = { { 387 /* tryToApplyPromotedParameterRead */ , 2 , 20 , 2 , 22 , ZEND_ACC_PRIVATE } };
124+ inline constexpr sigtab::Sig tryToApplyPropertyWritesFromAncestorConstructor = { { 474 /* tryToApplyPropertyWritesFromAncestorConstructor */ , 2 , 23 , 2 , 25 , ZEND_ACC_PRIVATE } };
120125} // namespace sig
121126
122127} // namespace ptdecl::ClassStatementsGatherer
0 commit comments