@@ -133,19 +133,7 @@ function processStubFile(string $stubFile, Context $context, bool $includeOnly =
133
133
}
134
134
135
135
if ($ fileInfo ->shouldGenerateLegacyArginfo ()) {
136
- $ legacyFileInfo = clone $ fileInfo ;
137
- $ legacyFileInfo ->legacyArginfoGeneration = true ;
138
- $ phpVersionIdMinimumCompatibility = $ legacyFileInfo ->getMinimumPhpVersionIdCompatibility ();
139
-
140
- foreach ($ legacyFileInfo ->getAllFuncInfos () as $ funcInfo ) {
141
- $ funcInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
142
- }
143
- foreach ($ legacyFileInfo ->getAllClassInfos () as $ classInfo ) {
144
- $ classInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
145
- }
146
- foreach ($ legacyFileInfo ->getAllConstInfos () as $ constInfo ) {
147
- $ constInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
148
- }
136
+ $ legacyFileInfo = $ fileInfo ->getLegacyVersion ();
149
137
150
138
$ arginfoCode = generateArgInfoCode (
151
139
basename ($ stubFilenameWithoutExtension ),
@@ -4199,7 +4187,7 @@ class FileInfo {
4199
4187
public string $ declarationPrefix = "" ;
4200
4188
public bool $ generateClassEntries = false ;
4201
4189
public bool $ isUndocumentable = false ;
4202
- public bool $ legacyArginfoGeneration = false ;
4190
+ private bool $ legacyArginfoGeneration = false ;
4203
4191
private ?int $ minimumPhpVersionIdCompatibility = null ;
4204
4192
4205
4193
/** @param array<int, DocCommentTag> $fileTags */
@@ -4259,15 +4247,6 @@ public function getAllConstInfos(): array {
4259
4247
return $ result ;
4260
4248
}
4261
4249
4262
- /**
4263
- * @return iterable<ClassInfo>
4264
- */
4265
- public function getAllClassInfos (): iterable {
4266
- foreach ($ this ->classInfos as $ classInfo ) {
4267
- yield $ classInfo ;
4268
- }
4269
- }
4270
-
4271
4250
public function __clone ()
4272
4251
{
4273
4252
foreach ($ this ->constInfos as $ key => $ constInfo ) {
@@ -4299,6 +4278,23 @@ public function shouldGenerateLegacyArginfo(): bool {
4299
4278
return $ this ->minimumPhpVersionIdCompatibility !== null && $ this ->minimumPhpVersionIdCompatibility < PHP_80_VERSION_ID ;
4300
4279
}
4301
4280
4281
+ public function getLegacyVersion (): FileInfo {
4282
+ $ legacyFileInfo = clone $ this ;
4283
+ $ legacyFileInfo ->legacyArginfoGeneration = true ;
4284
+ $ phpVersionIdMinimumCompatibility = $ legacyFileInfo ->getMinimumPhpVersionIdCompatibility ();
4285
+
4286
+ foreach ($ legacyFileInfo ->getAllFuncInfos () as $ funcInfo ) {
4287
+ $ funcInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
4288
+ }
4289
+ foreach ($ legacyFileInfo ->classInfos as $ classInfo ) {
4290
+ $ classInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
4291
+ }
4292
+ foreach ($ legacyFileInfo ->getAllConstInfos () as $ constInfo ) {
4293
+ $ constInfo ->discardInfoForOldPhpVersions ($ phpVersionIdMinimumCompatibility );
4294
+ }
4295
+ return $ legacyFileInfo ;
4296
+ }
4297
+
4302
4298
public function handleStatements (array $ stmts , PrettyPrinterAbstract $ prettyPrinter ): void {
4303
4299
$ conds = [];
4304
4300
foreach ($ stmts as $ stmt ) {
0 commit comments