Skip to content

Commit 302027e

Browse files
committed
remove unneeded generics
1 parent b052c7b commit 302027e

File tree

9 files changed

+70
-72
lines changed

9 files changed

+70
-72
lines changed

src/translator/adjective.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ export function fixAdjective(
9191
adjective: ReadonlyArray<English.AdjectivePhrase>,
9292
): ReadonlyArray<English.AdjectivePhrase> {
9393
return adjective
94-
.flatMap<English.AdjectivePhrase & { type: "simple" }>((adjective) => {
94+
.flatMap((adjective) => {
9595
switch (adjective.type) {
9696
case "simple":
9797
return [adjective];

src/translator/clause.ts

Lines changed: 48 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -22,57 +22,55 @@ function phraseClause(
2222
andParticle: "en",
2323
includeVerb: false,
2424
})
25-
.map<English.Clause>(
26-
(phrase) => {
27-
switch (phrase.type) {
28-
case "noun":
29-
return {
30-
type: "subject phrase",
31-
subject: phrase.noun,
32-
};
33-
case "adjective":
34-
return {
35-
type: "default",
36-
subject: {
37-
type: "simple",
38-
determiner: [],
39-
adjective: [],
40-
noun: {
41-
word: "it",
42-
emphasis: false,
43-
},
44-
quantity: "singular",
45-
perspective: "third",
46-
postAdjective: null,
47-
postCompound: null,
48-
preposition: [],
25+
.map((phrase) => {
26+
switch (phrase.type) {
27+
case "noun":
28+
return {
29+
type: "subject phrase",
30+
subject: phrase.noun,
31+
};
32+
case "adjective":
33+
return {
34+
type: "default",
35+
subject: {
36+
type: "simple",
37+
determiner: [],
38+
adjective: [],
39+
noun: {
40+
word: "it",
4941
emphasis: false,
5042
},
43+
quantity: "singular",
44+
perspective: "third",
45+
postAdjective: null,
46+
postCompound: null,
47+
preposition: [],
48+
emphasis: false,
49+
},
50+
verb: {
51+
type: "default",
5152
verb: {
52-
type: "default",
53-
verb: {
54-
modal: null,
55-
verb: [noAdverbs(noEmphasis("is"))],
56-
},
57-
subjectComplement: {
58-
type: "adjective",
59-
adjective: phrase.adjective,
60-
},
61-
contentClause: null,
62-
object: null,
63-
objectComplement: null,
64-
preposition: nullableAsArray(phrase.inWayPhrase)
65-
.map((object) => nounAsPreposition(object, "in")),
66-
hideVerb: true,
53+
modal: null,
54+
verb: [noAdverbs(noEmphasis("is"))],
6755
},
68-
preposition: [],
69-
hideSubject: true,
70-
};
71-
case "verb":
72-
throw new FilteredError("verb as interjection");
73-
}
74-
},
75-
);
56+
subjectComplement: {
57+
type: "adjective",
58+
adjective: phrase.adjective,
59+
},
60+
contentClause: null,
61+
object: null,
62+
objectComplement: null,
63+
preposition: nullableAsArray(phrase.inWayPhrase)
64+
.map((object) => nounAsPreposition(object, "in")),
65+
hideVerb: true,
66+
},
67+
preposition: [],
68+
hideSubject: true,
69+
};
70+
case "verb":
71+
throw new FilteredError("verb as interjection");
72+
}
73+
});
7674
}
7775
function liClause(
7876
clause: TokiPona.Clause & { type: "li clause" },
@@ -138,14 +136,14 @@ function iWish(
138136
function oClause(
139137
clause: TokiPona.Clause & { type: "o clause" },
140138
): ArrayResult<English.Clause> {
141-
const subject = clause.subjects != null
139+
const subject: ArrayResult<English.NounPhrase> = clause.subjects != null
142140
? multiplePhrasesAsNoun({
143141
phrases: clause.subjects,
144142
place: "subject",
145143
includeGerund: true,
146144
andParticle: "en",
147145
})
148-
: new ArrayResult<English.NounPhrase>([{
146+
: new ArrayResult([{
149147
type: "simple",
150148
determiner: [],
151149
adjective: [],
@@ -162,7 +160,7 @@ function oClause(
162160
const subjectPerspective = perspective(subject);
163161
return ArrayResult.concat(
164162
verb(predicate, subjectPerspective, subject.quantity)
165-
.map<English.Clause>((verb) => iWish(subject, verb)),
163+
.map((verb) => iWish(subject, verb)),
166164
ArrayResult.from(() =>
167165
verb(
168166
addModalToAll(

src/translator/modifier.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export function defaultModifier(
5252
const emphasis = wordUnit.emphasis != null;
5353
switch (wordUnit.type) {
5454
case "number":
55-
return number(wordUnit.words).map<ModifierTranslation>((number) => {
55+
return number(wordUnit.words).map((number) => {
5656
const quantity = number === 1 ? "singular" : "plural";
5757
return {
5858
type: "determiner" as const,
@@ -77,7 +77,7 @@ export function defaultModifier(
7777
switch (definition.type) {
7878
case "noun":
7979
return noun({ definition, reduplicationCount, emphasis })
80-
.map<ModifierTranslation>((noun) => ({
80+
.map((noun) => ({
8181
type: "noun",
8282
noun,
8383
}));
@@ -87,7 +87,7 @@ export function defaultModifier(
8787
reduplicationCount,
8888
emphasis,
8989
})
90-
.map<ModifierTranslation>((noun) => ({
90+
.map((noun) => ({
9191
type: "noun preposition",
9292
noun,
9393
preposition: definition.preposition,
@@ -106,7 +106,7 @@ export function defaultModifier(
106106
reduplicationCount,
107107
emphasis: wordUnit.emphasis != null,
108108
})
109-
.map<ModifierTranslation>((determiner) => ({
109+
.map((determiner) => ({
110110
type: "determiner",
111111
determiner,
112112
}));
@@ -116,7 +116,7 @@ export function defaultModifier(
116116
reduplicationCount,
117117
emphasis: wordUnit.emphasis,
118118
})
119-
.map<ModifierTranslation>((adjective) => ({
119+
.map((adjective) => ({
120120
type: "adjective",
121121
adjective,
122122
}));
@@ -126,12 +126,12 @@ export function defaultModifier(
126126
reduplicationCount,
127127
emphasis: wordUnit.emphasis,
128128
})
129-
.map<ModifierTranslation>((adjective) => ({
129+
.map((adjective) => ({
130130
type: "adjective",
131131
adjective,
132132
}));
133133
case "adverb":
134-
return new ArrayResult<ModifierTranslation>([{
134+
return new ArrayResult([{
135135
type: "adverb",
136136
adverb: word({
137137
word: definition.adverb,
@@ -257,7 +257,7 @@ export function multipleModifiers(
257257
inPositionPhrase.length <= 1 &&
258258
(noun.length === 0 || inPositionPhrase.length === 0)
259259
) {
260-
adjectival = new ArrayResult<MultipleModifierTranslation>([{
260+
adjectival = new ArrayResult([{
261261
type: "adjectival",
262262
nounPreposition: nounPreposition[0] ?? null,
263263
determiner,
@@ -292,7 +292,7 @@ export function multipleModifiers(
292292
emphasis: false,
293293
}
294294
: null;
295-
adverbial = new ArrayResult<MultipleModifierTranslation>([{
295+
adverbial = new ArrayResult([{
296296
type: "adverbial",
297297
adverb,
298298
inWayPhrase,

src/translator/phrase.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ function defaultPhrase(
193193
} else if (
194194
includeVerb && headWord.type === "verb" && modifier.type === "adverbial"
195195
) {
196-
return new ArrayResult<PhraseTranslation>([{
196+
return new ArrayResult([{
197197
type: "verb",
198198
verb: {
199199
...verbPhrase({ emphasis, verb: headWord, modifier }),
@@ -243,7 +243,7 @@ export function phrase(
243243
if (includeVerb) {
244244
return preposition(phrase)
245245
.map(prepositionAsVerb)
246-
.map<PhraseTranslation>((verb) => ({
246+
.map((verb) => ({
247247
type: "verb",
248248
verb: { ...verb, type: "simple" },
249249
}));

src/translator/predicate.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ export function predicate(
192192
...tokiPonaPredicate.predicates
193193
.map((predicates) => predicate(predicates, andParticle)),
194194
)
195-
.map<PartialCompoundVerb>((predicates) => ({
195+
.map((predicates) => ({
196196
type: "compound",
197197
conjunction: CONJUNCTION[tokiPonaPredicate.type],
198198
verb: predicates,

src/translator/preposition.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export function preposition(
3939
: throwError(new FilteredError(`${phrases.type} as indirect object`))
4040
),
4141
)
42-
.map<English.Preposition>(([preposition, adverb, object]) => ({
42+
.map(([preposition, adverb, object]) => ({
4343
adverb,
4444
preposition,
4545
object,

src/translator/sentence.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ function sentence(
144144
}
145145
case "filler":
146146
return filler(sentence.filler)
147-
.map<English.Sentence>((interjection) => ({
147+
.map((interjection) => ({
148148
type: "sentence",
149149
clauses: [{
150150
type: "interjection",

src/translator/verb.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ export function verb(
221221
perspective,
222222
quantity,
223223
})
224-
.map<English.VerbPhrase>((verb) => ({
224+
.map((verb) => ({
225225
...partialVerb,
226226
type: "default",
227227
verb: {

src/translator/word_unit.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@ function defaultWordUnit(
3737
definition,
3838
emphasis: emphasis != null,
3939
})
40-
.map<WordUnitTranslation>((noun) => ({ ...noun, type: "noun" }));
40+
.map((noun) => ({ ...noun, type: "noun" }));
4141
}
4242
case "personal pronoun":
43-
return new ArrayResult<WordUnitTranslation>([{
43+
return new ArrayResult([{
4444
...partialPronoun({
4545
...options,
4646
pronoun: definition,
@@ -53,7 +53,7 @@ function defaultWordUnit(
5353
return new ArrayResult();
5454
} else {
5555
return adjective({ ...options, definition })
56-
.map<WordUnitTranslation>((adjective) => ({
56+
.map((adjective) => ({
5757
type: "adjective",
5858
adjective,
5959
}));
@@ -63,7 +63,7 @@ function defaultWordUnit(
6363
...options,
6464
adjectives: definition.adjective,
6565
})
66-
.map<WordUnitTranslation>((adjective) => ({
66+
.map((adjective) => ({
6767
type: "adjective",
6868
adjective,
6969
}));
@@ -73,7 +73,7 @@ function defaultWordUnit(
7373
definition,
7474
emphasis: emphasis != null,
7575
})
76-
.map<WordUnitTranslation>((verb) => ({ ...verb, type: "verb" }));
76+
.map((verb) => ({ ...verb, type: "verb" }));
7777
default:
7878
return new ArrayResult();
7979
}
@@ -90,7 +90,7 @@ export function wordUnit(
9090
switch (wordUnit.type) {
9191
case "number":
9292
return number(wordUnit.words)
93-
.map<WordUnitTranslation>((number) => ({
93+
.map((number) => ({
9494
type: "noun",
9595
determiner: [],
9696
adjective: [],

0 commit comments

Comments
 (0)