Skip to content

Commit ce7a039

Browse files
committed
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

+12-124
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

+1-1
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)