@@ -83,15 +83,16 @@ public function create(string $tag): TagInterface
8383 try {
8484 return $ factory ->create ($ body );
8585 } catch (InvalidTagVariableNameException $ e ) {
86+ $ type = $ e ->getType ();
8687 $ body = Description::fromNonTagged (
8788 body: \substr ($ body , $ e ->getTypeOffset ()),
8889 );
8990
90- if ($ e -> getType () === null ) {
91+ if ($ type === null ) {
9192 return new InvalidTag ($ name , $ body );
9293 }
9394
94- return new InvalidTypedTag ($ name , $ e -> getType () , $ body );
95+ return new InvalidTypedTag ($ name , $ type , $ body );
9596 } catch (\InvalidArgumentException ) {
9697 return new InvalidTag ($ name , Description::fromNonTagged ($ body ));
9798 }
@@ -118,7 +119,7 @@ private function getFactory(string $tag): ?TagFactoryInterface
118119 }
119120
120121 /**
121- * @return list< non-empty-lowercase-string>
122+ * @return array<array-key, non-empty-lowercase-string>
122123 */
123124 private function getTagMappings (string $ tag ): array
124125 {
@@ -128,17 +129,20 @@ private function getTagMappings(string $tag): array
128129
129130 $ lower = \strtolower ($ tag );
130131
131- return $ this ->mappings [$ lower ] ??= [...$ this ->getTagVariants ($ lower )];
132+ return $ this ->mappings [$ lower ] ??= \array_values ([
133+ ...$ this ->getTagVariants ($ lower ),
134+ ]);
132135 }
133136
134137 /**
135138 * @param lowercase-string $tag
136139 * @return iterable<array-key, non-empty-lowercase-string>
140+ * @psalm-suppress MoreSpecificReturnType
137141 */
138142 private function getTagVariants (string $ tag ): iterable
139143 {
140144 if ($ tag === '' ) {
141- return ;
145+ return [] ;
142146 }
143147
144148 yield $ tag ;
0 commit comments