| 148 |
lars |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
declare(strict_types=1);
|
|
|
4 |
|
|
|
5 |
namespace Doctrine\Inflector\Rules\English;
|
|
|
6 |
|
|
|
7 |
use Doctrine\Inflector\Rules\Pattern;
|
|
|
8 |
|
|
|
9 |
final class Uninflected
|
|
|
10 |
{
|
|
|
11 |
/** @return Pattern[] */
|
|
|
12 |
public static function getSingular(): iterable
|
|
|
13 |
{
|
|
|
14 |
yield from self::getDefault();
|
|
|
15 |
|
|
|
16 |
yield new Pattern('.*ss');
|
|
|
17 |
yield new Pattern('clothes');
|
|
|
18 |
yield new Pattern('data');
|
|
|
19 |
yield new Pattern('fascia');
|
|
|
20 |
yield new Pattern('fuchsia');
|
|
|
21 |
yield new Pattern('galleria');
|
|
|
22 |
yield new Pattern('mafia');
|
|
|
23 |
yield new Pattern('militia');
|
|
|
24 |
yield new Pattern('pants');
|
|
|
25 |
yield new Pattern('petunia');
|
|
|
26 |
yield new Pattern('sepia');
|
|
|
27 |
yield new Pattern('trivia');
|
|
|
28 |
yield new Pattern('utopia');
|
|
|
29 |
}
|
|
|
30 |
|
|
|
31 |
/** @return Pattern[] */
|
|
|
32 |
public static function getPlural(): iterable
|
|
|
33 |
{
|
|
|
34 |
yield from self::getDefault();
|
|
|
35 |
|
|
|
36 |
yield new Pattern('people');
|
|
|
37 |
yield new Pattern('trivia');
|
|
|
38 |
yield new Pattern('\w+ware$');
|
|
|
39 |
yield new Pattern('media');
|
|
|
40 |
}
|
|
|
41 |
|
|
|
42 |
/** @return Pattern[] */
|
|
|
43 |
private static function getDefault(): iterable
|
|
|
44 |
{
|
|
|
45 |
yield new Pattern('\w+media');
|
|
|
46 |
yield new Pattern('advice');
|
|
|
47 |
yield new Pattern('aircraft');
|
|
|
48 |
yield new Pattern('amoyese');
|
|
|
49 |
yield new Pattern('art');
|
|
|
50 |
yield new Pattern('audio');
|
|
|
51 |
yield new Pattern('baggage');
|
|
|
52 |
yield new Pattern('bison');
|
|
|
53 |
yield new Pattern('borghese');
|
|
|
54 |
yield new Pattern('bream');
|
|
|
55 |
yield new Pattern('breeches');
|
|
|
56 |
yield new Pattern('britches');
|
|
|
57 |
yield new Pattern('buffalo');
|
|
|
58 |
yield new Pattern('butter');
|
|
|
59 |
yield new Pattern('cantus');
|
|
|
60 |
yield new Pattern('carp');
|
|
|
61 |
yield new Pattern('cattle');
|
|
|
62 |
yield new Pattern('chassis');
|
|
|
63 |
yield new Pattern('clippers');
|
|
|
64 |
yield new Pattern('clothing');
|
|
|
65 |
yield new Pattern('coal');
|
|
|
66 |
yield new Pattern('cod');
|
|
|
67 |
yield new Pattern('coitus');
|
|
|
68 |
yield new Pattern('compensation');
|
|
|
69 |
yield new Pattern('congoese');
|
|
|
70 |
yield new Pattern('contretemps');
|
|
|
71 |
yield new Pattern('coreopsis');
|
|
|
72 |
yield new Pattern('corps');
|
|
|
73 |
yield new Pattern('cotton');
|
|
|
74 |
yield new Pattern('data');
|
|
|
75 |
yield new Pattern('debris');
|
|
|
76 |
yield new Pattern('deer');
|
|
|
77 |
yield new Pattern('diabetes');
|
|
|
78 |
yield new Pattern('djinn');
|
|
|
79 |
yield new Pattern('education');
|
|
|
80 |
yield new Pattern('eland');
|
|
|
81 |
yield new Pattern('elk');
|
|
|
82 |
yield new Pattern('emoji');
|
|
|
83 |
yield new Pattern('equipment');
|
|
|
84 |
yield new Pattern('evidence');
|
|
|
85 |
yield new Pattern('faroese');
|
|
|
86 |
yield new Pattern('feedback');
|
|
|
87 |
yield new Pattern('fish');
|
|
|
88 |
yield new Pattern('flounder');
|
|
|
89 |
yield new Pattern('flour');
|
|
|
90 |
yield new Pattern('foochowese');
|
|
|
91 |
yield new Pattern('food');
|
|
|
92 |
yield new Pattern('furniture');
|
|
|
93 |
yield new Pattern('gallows');
|
|
|
94 |
yield new Pattern('genevese');
|
|
|
95 |
yield new Pattern('genoese');
|
|
|
96 |
yield new Pattern('gilbertese');
|
|
|
97 |
yield new Pattern('gold');
|
|
|
98 |
yield new Pattern('headquarters');
|
|
|
99 |
yield new Pattern('herpes');
|
|
|
100 |
yield new Pattern('hijinks');
|
|
|
101 |
yield new Pattern('homework');
|
|
|
102 |
yield new Pattern('hottentotese');
|
|
|
103 |
yield new Pattern('impatience');
|
|
|
104 |
yield new Pattern('information');
|
|
|
105 |
yield new Pattern('innings');
|
|
|
106 |
yield new Pattern('jackanapes');
|
|
|
107 |
yield new Pattern('jeans');
|
|
|
108 |
yield new Pattern('jedi');
|
|
|
109 |
yield new Pattern('kin');
|
|
|
110 |
yield new Pattern('kiplingese');
|
|
|
111 |
yield new Pattern('knowledge');
|
|
|
112 |
yield new Pattern('kongoese');
|
|
|
113 |
yield new Pattern('leather');
|
|
|
114 |
yield new Pattern('love');
|
|
|
115 |
yield new Pattern('lucchese');
|
|
|
116 |
yield new Pattern('luggage');
|
|
|
117 |
yield new Pattern('mackerel');
|
|
|
118 |
yield new Pattern('Maltese');
|
|
|
119 |
yield new Pattern('management');
|
|
|
120 |
yield new Pattern('metadata');
|
|
|
121 |
yield new Pattern('mews');
|
|
|
122 |
yield new Pattern('money');
|
|
|
123 |
yield new Pattern('moose');
|
|
|
124 |
yield new Pattern('mumps');
|
|
|
125 |
yield new Pattern('music');
|
|
|
126 |
yield new Pattern('nankingese');
|
|
|
127 |
yield new Pattern('news');
|
|
|
128 |
yield new Pattern('nexus');
|
|
|
129 |
yield new Pattern('niasese');
|
|
|
130 |
yield new Pattern('nutrition');
|
|
|
131 |
yield new Pattern('offspring');
|
|
|
132 |
yield new Pattern('oil');
|
|
|
133 |
yield new Pattern('patience');
|
|
|
134 |
yield new Pattern('pekingese');
|
|
|
135 |
yield new Pattern('piedmontese');
|
|
|
136 |
yield new Pattern('pincers');
|
|
|
137 |
yield new Pattern('pistoiese');
|
|
|
138 |
yield new Pattern('plankton');
|
|
|
139 |
yield new Pattern('pliers');
|
|
|
140 |
yield new Pattern('pokemon');
|
|
|
141 |
yield new Pattern('police');
|
|
|
142 |
yield new Pattern('polish');
|
|
|
143 |
yield new Pattern('portuguese');
|
|
|
144 |
yield new Pattern('proceedings');
|
|
|
145 |
yield new Pattern('progress');
|
|
|
146 |
yield new Pattern('rabies');
|
|
|
147 |
yield new Pattern('rain');
|
|
|
148 |
yield new Pattern('research');
|
|
|
149 |
yield new Pattern('rhinoceros');
|
|
|
150 |
yield new Pattern('rice');
|
|
|
151 |
yield new Pattern('salmon');
|
|
|
152 |
yield new Pattern('sand');
|
|
|
153 |
yield new Pattern('sarawakese');
|
|
|
154 |
yield new Pattern('scissors');
|
|
|
155 |
yield new Pattern('sea[- ]bass');
|
|
|
156 |
yield new Pattern('series');
|
|
|
157 |
yield new Pattern('shavese');
|
|
|
158 |
yield new Pattern('shears');
|
|
|
159 |
yield new Pattern('sheep');
|
|
|
160 |
yield new Pattern('siemens');
|
|
|
161 |
yield new Pattern('silk');
|
|
|
162 |
yield new Pattern('sms');
|
|
|
163 |
yield new Pattern('soap');
|
|
|
164 |
yield new Pattern('social media');
|
|
|
165 |
yield new Pattern('spam');
|
|
|
166 |
yield new Pattern('species');
|
|
|
167 |
yield new Pattern('staff');
|
|
|
168 |
yield new Pattern('sugar');
|
|
|
169 |
yield new Pattern('swine');
|
|
|
170 |
yield new Pattern('talent');
|
|
|
171 |
yield new Pattern('toothpaste');
|
|
|
172 |
yield new Pattern('traffic');
|
|
|
173 |
yield new Pattern('travel');
|
|
|
174 |
yield new Pattern('trousers');
|
|
|
175 |
yield new Pattern('trout');
|
|
|
176 |
yield new Pattern('tuna');
|
|
|
177 |
yield new Pattern('us');
|
|
|
178 |
yield new Pattern('vermontese');
|
|
|
179 |
yield new Pattern('vinegar');
|
|
|
180 |
yield new Pattern('weather');
|
|
|
181 |
yield new Pattern('wenchowese');
|
|
|
182 |
yield new Pattern('wheat');
|
|
|
183 |
yield new Pattern('whiting');
|
|
|
184 |
yield new Pattern('wildebeest');
|
|
|
185 |
yield new Pattern('wood');
|
|
|
186 |
yield new Pattern('wool');
|
|
|
187 |
yield new Pattern('yengeese');
|
|
|
188 |
}
|
|
|
189 |
}
|