Switched implSuper to a symbol
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -4,6 +4,8 @@ import { TraitExpression } from "./TraitExpression"
|
|||||||
import { Extend, StaticMembers } from "./util"
|
import { Extend, StaticMembers } from "./util"
|
||||||
|
|
||||||
|
|
||||||
|
declare const implSuperSymbol: unique symbol
|
||||||
|
|
||||||
type ImplSuper<This> = (
|
type ImplSuper<This> = (
|
||||||
This extends TraitBuilder<
|
This extends TraitBuilder<
|
||||||
any,
|
any,
|
||||||
@@ -27,7 +29,7 @@ type ImplSuper<This> = (
|
|||||||
StaticMembers<ImplClass>,
|
StaticMembers<ImplClass>,
|
||||||
]>
|
]>
|
||||||
> &
|
> &
|
||||||
{ readonly _tag: "@thilawyn/traitify-ts/Super" } // TODO: replace with unique symbol?
|
{ readonly [implSuperSymbol]: true }
|
||||||
)
|
)
|
||||||
: never
|
: never
|
||||||
)
|
)
|
||||||
@@ -94,7 +96,7 @@ export class TraitBuilder<
|
|||||||
Simplify<
|
Simplify<
|
||||||
Omit<
|
Omit<
|
||||||
StaticMembers<ImplClassWithAbstract>,
|
StaticMembers<ImplClassWithAbstract>,
|
||||||
keyof StaticAbstract | "_tag"
|
keyof StaticAbstract | typeof implSuperSymbol
|
||||||
>
|
>
|
||||||
>
|
>
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user