Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit ce7a039

Browse files
Simplification
1 parent 223f1ab commit ce7a039

File tree

2 files changed

+13
-125
lines changed

2 files changed

+13
-125
lines changed

‎src/Rules/Deprecations/RestrictedDeprecatedClassNameUsageExtension.php‎

Lines changed: 12 additions & 124 deletions
Original file line numberDiff line numberDiff line change
@@ -56,141 +56,29 @@ public function isRestrictedClassNameUsage(
5656

5757
$identifierPart = sprintf('deprecated%s', $classReflection->getClassTypeDescription());
5858
$defaultUsage = RestrictedUsage::create(
59-
$location->createMessage(
59+
$this->addClassDescriptionToMessage($classReflection, $location->createMessage(
6060
sprintf('deprecated %s %s', strtolower($classReflection->getClassTypeDescription()), $classReflection->getDisplayName()),
61-
),
61+
)),
6262
$location->createIdentifier($identifierPart),
6363
);
6464

65-
$description = $classReflection->getDeprecatedDescription();
66-
6765
if ($location->value === ClassNameUsageLocation::CLASS_IMPLEMENTS) {
68-
if ($currentClassName === null) {
69-
if ($description === null) {
70-
return RestrictedUsage::create(
71-
sprintf(
72-
'Anonymous class implements deprecated %s %s.',
73-
strtolower($classReflection->getClassTypeDescription()),
74-
$classReflection->getDisplayName(),
75-
),
76-
$location->createIdentifier($identifierPart),
77-
);
78-
}
79-
80-
return RestrictedUsage::create(
81-
sprintf(
82-
"Anonymous class implements deprecated %s %s:\n%s",
83-
strtolower($classReflection->getClassTypeDescription()),
84-
$classReflection->getDisplayName(),
85-
$description,
86-
),
87-
$location->createIdentifier($identifierPart),
88-
);
89-
}
90-
91-
if ($description !== null) {
92-
return RestrictedUsage::create(
93-
sprintf(
94-
"Class %s implements deprecated %s %s:\n%s",
95-
$currentClassName,
96-
strtolower($classReflection->getClassTypeDescription()),
97-
$classReflection->getDisplayName(),
98-
$description,
99-
),
100-
$location->createIdentifier($identifierPart),
101-
);
102-
}
103-
10466
return $defaultUsage;
10567
}
10668

10769
if ($location->value === ClassNameUsageLocation::CLASS_EXTENDS) {
108-
if ($currentClassName === null) {
109-
if ($description === null) {
110-
return RestrictedUsage::create(
111-
sprintf(
112-
'Anonymous class extends deprecated %s %s.',
113-
strtolower($classReflection->getClassTypeDescription()),
114-
$classReflection->getDisplayName(),
115-
),
116-
$location->createIdentifier($identifierPart),
117-
);
118-
}
119-
120-
return RestrictedUsage::create(
121-
sprintf(
122-
"Anonymous class extends deprecated %s %s:\n%s",
123-
strtolower($classReflection->getClassTypeDescription()),
124-
$classReflection->getDisplayName(),
125-
$description,
126-
),
127-
$location->createIdentifier($identifierPart),
128-
);
129-
}
130-
131-
if ($description !== null) {
132-
return RestrictedUsage::create(
133-
sprintf(
134-
"Class %s extends deprecated %s %s:\n%s",
135-
$currentClassName,
136-
strtolower($classReflection->getClassTypeDescription()),
137-
$classReflection->getDisplayName(),
138-
$description,
139-
),
140-
$location->createIdentifier($identifierPart),
141-
);
142-
}
143-
14470
return $defaultUsage;
14571
}
14672

14773
if ($location->value === ClassNameUsageLocation::INTERFACE_EXTENDS) {
148-
if ($description !== null) {
149-
return RestrictedUsage::create(
150-
sprintf(
151-
"Interface %s extends deprecated %s %s:\n%s",
152-
$currentClassName,
153-
strtolower($classReflection->getClassTypeDescription()),
154-
$classReflection->getDisplayName(),
155-
$description,
156-
),
157-
$location->createIdentifier($identifierPart),
158-
);
159-
}
160-
16174
return $defaultUsage;
16275
}
16376

16477
if ($location->value === ClassNameUsageLocation::INSTANTIATION) {
165-
if ($description !== null) {
166-
return RestrictedUsage::create(
167-
sprintf(
168-
"Instantiation of deprecated %s %s:\n%s",
169-
strtolower($classReflection->getClassTypeDescription()),
170-
$classReflection->getDisplayName(),
171-
$description,
172-
),
173-
$location->createIdentifier('deprecated'),
174-
);
175-
}
176-
17778
return $defaultUsage;
17879
}
17980

18081
if ($location->value === ClassNameUsageLocation::TRAIT_USE) {
181-
if ($description !== null) {
182-
return RestrictedUsage::create(
183-
sprintf(
184-
"Usage of deprecated %s %s in class %s:\n%s",
185-
strtolower($classReflection->getClassTypeDescription()),
186-
$classReflection->getDisplayName(),
187-
$currentClassName,
188-
$description,
189-
),
190-
$location->createIdentifier('deprecated'),
191-
);
192-
}
193-
19482
return $defaultUsage;
19583
}
19684

@@ -228,16 +116,7 @@ public function isRestrictedClassNameUsage(
228116
}
229117

230118
if ($location->value === ClassNameUsageLocation::PARAMETER_TYPE || $location->value === ClassNameUsageLocation::RETURN_TYPE) {
231-
$message = $location->createMessage(
232-
sprintf('deprecated %s %s', strtolower($classReflection->getClassTypeDescription()), $classReflection->getDisplayName()),
233-
);
234-
if ($classReflection->getDeprecatedDescription() !== null) {
235-
$message = rtrim($message, '.') . ":\n" . $classReflection->getDeprecatedDescription();
236-
}
237-
return RestrictedUsage::create(
238-
$message,
239-
$location->createIdentifier($identifierPart),
240-
);
119+
return $defaultUsage;
241120
}
242121

243122
if (!$this->bleedingEdge) {
@@ -247,4 +126,13 @@ public function isRestrictedClassNameUsage(
247126
return $defaultUsage;
248127
}
249128

129+
private function addClassDescriptionToMessage(ClassReflection $classReflection, string $message): string
130+
{
131+
if ($classReflection->getDeprecatedDescription() === null) {
132+
return $message;
133+
}
134+
135+
return rtrim($message, '.') . ":\n" . $classReflection->getDeprecatedDescription();
136+
}
137+
250138
}

‎tests/Rules/Deprecations/RestrictedDeprecatedClassNameUsageExtensionTest.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public function testStaticMethodCallOnDeprecatedSubclass(): void
2727
11,
2828
],
2929
[
30-
'Call to static method foo() on deprecated class CheckDeprecatedStaticMethodCall\DeprecatedBaz.',
30+
"Call to static method foo() on deprecated class CheckDeprecatedStaticMethodCall\DeprecatedBaz:\nDo not touch this at all.",
3131
15,
3232
],
3333
]);

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /