|
@@ -58,19 +58,19 @@ discard block |
|
|
block discarded – undo |
|
58
|
58
|
UTF8::LATIN_SMALL_LETTER_SHARP_S => 'ss', |
|
59
|
59
|
]; |
|
60
|
60
|
} |
|
61
|
|
- public function relationships(): array |
|
|
61
|
+ public function relationships(): array |
|
62
|
62
|
{ |
|
63
|
63
|
// returns array => [nominativ, genitive %s] |
|
64
|
64
|
// $genitive = static fn (string $prefix, string $suffix): array => [$prefix . $suffix, $prefix . 's' . $suffix . '%s']; |
|
65
|
65
|
$genitive = static fn (string $prefix, string $suffix, int $gender): array => |
|
66
|
|
- ($gender == 0) ? [$prefix . $suffix, '%s' . ' des ' . $prefix . 's' . $suffix] : (($gender == 1) ? [$prefix . $suffix, '%s' . ' der ' . $prefix . $suffix] : [$prefix . $suffix, '%s' . ' der ' . $prefix . $suffix]); |
|
|
66
|
+ ($gender == 0) ? [$prefix . $suffix, '%s' . ' des ' . $prefix . 's' . $suffix] : (($gender == 1) ? [$prefix . $suffix, '%s' . ' der ' . $prefix . $suffix] : [$prefix . $suffix, '%s' . ' der ' . $prefix . $suffix]); |
|
67
|
67
|
|
|
68
|
68
|
$ur = static fn (int $n, string $simpleGreat, string $suffix, int $gender): array => $genitive( |
|
69
|
|
- (($n > 1) ? ($n + 1) . ' x Ur' : (($n > -1) ? 'Ur' . str_repeat('ur', $n) : '')) . $simpleGreat, $suffix, $gender |
|
70
|
|
- // $n <= -1 -> '' |
|
71
|
|
- // $n == 0 -> Ur |
|
72
|
|
- // $n == 1 -> Urur |
|
73
|
|
- // $n >= 2 -> $n+1 ' x Ur' |
|
|
69
|
+ (($n > 1) ? ($n + 1) . ' x Ur' : (($n > -1) ? 'Ur' . str_repeat('ur', $n) : '')) . $simpleGreat, $suffix, $gender |
|
|
70
|
+ // $n <= -1 -> '' |
|
|
71
|
+ // $n == 0 -> Ur |
|
|
72
|
+ // $n == 1 -> Urur |
|
|
73
|
+ // $n >= 2 -> $n+1 ' x Ur' |
|
74
|
74
|
); |
|
75
|
75
|
|
|
76
|
76
|
return [ |
|
@@ -163,48 +163,48 @@ discard block |
|
|
block discarded – undo |
|
163
|
163
|
Relationship::fixed('Enkelin', '%s der Enkelin')->child()->daughter(), |
|
164
|
164
|
Relationship::fixed('Enkel', '%s des Enkels')->child()->son(), |
|
165
|
165
|
Relationship::fixed('Enkelin/Enkel', '%s der Enkelin/des Enkels')->child()->child(), |
|
166
|
|
- // Nichte / Neffe |
|
|
166
|
+ // Nichte / Neffe |
|
167
|
167
|
Relationship::fixed('Nichte', '%s der Nichte')->sibling()->daughter(), |
|
168
|
168
|
Relationship::fixed('Nichte', '%s der Nichte')->married()->spouse()->sibling()->daughter(), |
|
169
|
169
|
Relationship::fixed('Neffe', '%s des Neffen')->sibling()->son(), |
|
170
|
170
|
Relationship::fixed('Neffe', '%s des Neffen')->married()->spouse()->sibling()->son(), |
|
171
|
171
|
Relationship::fixed('Nichte/Neffe', '%s der Nichte / des Neffen')->sibling()->child(), |
|
172
|
172
|
Relationship::fixed('Nichte/Neffe', '%s der Nichte/ des Neffen')->married()->spouse()->sibling()->child(), |
|
173
|
|
- // Großnichte / Großneffe |
|
|
173
|
+ // Großnichte / Großneffe |
|
174
|
174
|
Relationship::fixed('Großnichte', '%s der Großnichte')->sibling()->child()->child()->female(), |
|
175
|
175
|
Relationship::fixed('Großnichte', '%s der Großnichte')->married()->spouse()->sibling()->child()->child()->female(), |
|
176
|
176
|
Relationship::fixed('Großneffe', '%s des Großneffen')->sibling()->child()->child()->male(), |
|
177
|
177
|
Relationship::fixed('Großneffe', '%s des Großneffen')->married()->spouse()->sibling()->child()->child()->male(), |
|
178
|
|
- // Tante / Onkel |
|
|
178
|
+ // Tante / Onkel |
|
179
|
179
|
Relationship::fixed('Tante', '%s der Tante')->parent()->sister(), |
|
180
|
180
|
Relationship::fixed('Tante', '%s der Tante')->parent()->brother()->wife(), |
|
181
|
181
|
Relationship::fixed('Onkel', '%s des Onkels')->parent()->sister()->husband(), |
|
182
|
182
|
Relationship::fixed('Onkel', '%s des Onkels')->parent()->brother(), |
|
183
|
|
- // Großtante / Großonkel |
|
|
183
|
+ // Großtante / Großonkel |
|
184
|
184
|
Relationship::fixed('Großtante', '%s der Großtante')->parent()->parent()->sister(), |
|
185
|
185
|
Relationship::fixed('Großtante', '%s der Großtante')->parent()->parent()->brother()->wife(), |
|
186
|
186
|
Relationship::fixed('Großonkel', '%s des Großonkels')->parent()->parent()->brother(), |
|
187
|
187
|
Relationship::fixed('Großonkel', '%s des Großonkels')->parent()->parent()->sister()->husband(), |
|
188
|
|
- // Cousin / Cousine |
|
|
188
|
+ // Cousin / Cousine |
|
189
|
189
|
Relationship::fixed('Cousine', '%s der Cousine')->parent()->sister()->child()->female(), |
|
190
|
190
|
Relationship::fixed('Cousine', '%s der Cousine')->parent()->brother()->child()->female(), |
|
191
|
191
|
Relationship::fixed('Cousin', '%s des Cousins')->parent()->sister()->child()->male(), |
|
192
|
192
|
Relationship::fixed('Cousin', '%s des Cousins')->parent()->brother()->child()->male(), |
|
193
|
193
|
// Relationships with dynamically generated names |
|
194
|
|
- // ancestors: n=2 -> Urgroßmutter (mütterlicherseits) / Großmutter der Mutter |
|
|
194
|
+ // ancestors: n=2 -> Urgroßmutter (mütterlicherseits) / Großmutter der Mutter |
|
195
|
195
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großmutter', ' (mütterlicherseits) ', 1))->mother()->ancestor()->female(), |
|
196
|
196
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großvater', ' (mütterlicherseits) ', 0))->mother()->ancestor()->male(), |
|
197
|
197
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großmutter', ' (väterlicherseits) ', 1))->father()->ancestor()->female(), |
|
198
|
198
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großvater', ' (väterlicherseits) ', 0))->father()->ancestor()->male(), |
|
199
|
|
- // |
|
|
199
|
+ // |
|
200
|
200
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großeltern', ' (väterlicherseits) ', 2))->father()->ancestor(), |
|
201
|
201
|
Relationship::dynamic(static fn (int $n) => $ur($n - 2, 'großeltern', ' (mütterlicherseits) ', 2))->mother()->ancestor(), |
|
202
|
|
- // |
|
|
202
|
+ // |
|
203
|
203
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großtante', ' ', 1))->ancestor()->sister(), |
|
204
|
204
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großtante', ' ', 1))->ancestor()->sibling()->wife(), |
|
205
|
205
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großonkel', ' ', 0))->ancestor()->brother(), |
|
206
|
206
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großonkel', ' ', 0))->ancestor()->sibling()->husband(), |
|
207
|
|
- // descendants |
|
|
207
|
+ // descendants |
|
208
|
208
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großnichte', ' ', 1))->sibling()->descendant()->female(), |
|
209
|
209
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großnichte', ' ', 1))->married()->spouse()->sibling()->descendant()->female(), |
|
210
|
210
|
Relationship::dynamic(static fn (int $n) => $ur($n - 3, 'großneffe', ' ', 0))->sibling()->descendant()->male(), |