Skip to content

Commit d9a6fa9

Browse files
committed
Clear names
1 parent ba715dd commit d9a6fa9

2 files changed

Lines changed: 9 additions & 15 deletions

File tree

src/slang-utils/create-nonterminal-variant-creator.ts

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import type { AstNode, StrictPolymorphicNode } from '../slang-nodes/types.d.ts';
66
import type {
77
CollectedMetadata,
88
SlangAstNode,
9-
SlangAstNodeConstructors
9+
SlangAstNodeClass
1010
} from '../types.d.ts';
1111

1212
type Constructor<T> = new (...args: any) => T;
@@ -26,14 +26,11 @@ export function createNonterminalVariantSimpleCreator<
2626
U extends SlangPolymorphicNode,
2727
T extends StrictPolymorphicNode
2828
>(
29-
constructors: [
30-
SlangAstNodeConstructors,
31-
ConstructorsFromInstances<T['variant']>
32-
][]
29+
constructors: [SlangAstNodeClass, ConstructorsFromInstances<T['variant']>][]
3330
): NonterminalVariantFactory<U, T> {
3431
return (variant, collected, options?) => {
35-
for (const [instance, constructor] of constructors) {
36-
if (variant instanceof instance)
32+
for (const [slangAstClass, constructor] of constructors) {
33+
if (variant instanceof slangAstClass)
3734
return new constructor(variant, collected, options);
3835
}
3936

@@ -45,12 +42,9 @@ export function createNonterminalVariantCreator<
4542
U extends SlangPolymorphicNode,
4643
T extends StrictPolymorphicNode
4744
>(
48-
constructors: [
49-
SlangAstNodeConstructors,
50-
ConstructorsFromInstances<T['variant']>
51-
][],
45+
constructors: [SlangAstNodeClass, ConstructorsFromInstances<T['variant']>][],
5246
extractVariantConstructors: [
53-
SlangAstNodeConstructors,
47+
SlangAstNodeClass,
5448
ConstructorsFromInstances<StrictPolymorphicNode>
5549
][]
5650
): NonterminalVariantFactory<U, T> {
@@ -59,8 +53,8 @@ export function createNonterminalVariantCreator<
5953
);
6054

6155
return (variant, collected, options?) => {
62-
for (const [instance, constructor] of extractVariantConstructors) {
63-
if (variant instanceof instance)
56+
for (const [slangAstClass, constructor] of extractVariantConstructors) {
57+
if (variant instanceof slangAstClass)
6458
return extractVariant(new constructor(variant, collected, options));
6559
}
6660

src/types.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,4 @@ type KeyOfAst = keyof TypeOfAst;
3232
type ValuesOf<E> = E[keyof E];
3333

3434
type SlangAstNode = { [k in KeyOfAst]: ValuesOf<TypeOfAst[k]> }[KeyOfAst];
35-
type SlangAstNodeConstructors = { [k in KeyOfAst]: TypeOfAst[k] }[KeyOfAst];
35+
type SlangAstNodeClass = { [k in KeyOfAst]: TypeOfAst[k] }[KeyOfAst];

0 commit comments

Comments
 (0)