ImplStaticThis helper
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Julien Valverdé
2024-02-28 01:22:35 +01:00
parent 1ac7ec5245
commit 6e1a202ade
2 changed files with 9 additions and 1 deletions

View File

@@ -120,6 +120,14 @@ export namespace TraitBuilder {
}
export type ImplStaticThis<
ImplClass extends AbstractClass<object> & { readonly [implSuperSymbol]: true }
> = (
AbstractClass<InstanceType<ImplClass>> &
Omit<StaticMembers<ImplClass>, typeof implSuperSymbol>
)
export const trait = new TraitBuilder(
new TraitExpression(TraitExpression.NullSuperclass, []),
{} as object,

View File

@@ -1,4 +1,4 @@
export { Trait, TraitClass, TraitConcreteClass, TraitInstance, TraitStaticMembers, TraitTuple } from "./Trait"
export { TraitBuilder, trait } from "./TraitBuilder"
export { ImplStaticThis, TraitBuilder, trait } from "./TraitBuilder"
export { Implements, StaticImplements, TraitExpression, TraitExpressionClass, TraitExpressionConcreteClass, TraitExpressionInstance, TraitExpressionStaticMembers } from "./TraitExpression"
export { TraitExpressionBuilder, expression } from "./TraitExpressionBuilder"