0.1.0 #1

Merged
Thilawyn merged 65 commits from next into master 2024-02-06 03:15:40 +01:00
Showing only changes of commit 8d2cb90f52 - Show all commits

View File

@@ -1,6 +1,6 @@
import { Call, Fn, Pipe, Tuples } from "hotscript" import { Call, Fn, Pipe, Tuples } from "hotscript"
import { AbstractClass, Class, Opaque } from "type-fest" import { AbstractClass, Class, Opaque } from "type-fest"
import { AbstractTag, Trait, TraitApplierSuperTag, TraitOwnAbstractFn, TraitOwnImplClassFn, TraitOwnImplInstanceFn } from "." import { AbstractTag, Trait, TraitApplierSuperTag } from "."
import { ExtendFn, SimplifyFn, StaticMembersFn } from "./util" import { ExtendFn, SimplifyFn, StaticMembersFn } from "./util"
@@ -21,7 +21,7 @@ export class TraitExpression<
AbstractClass< AbstractClass<
Pipe<[ Pipe<[
InstanceType<Super>, InstanceType<Super>,
...Call<Tuples.Map<TraitOwnImplInstanceFn>, OwnTraits>, ...Call<Tuples.Map<Trait.OwnImplInstanceFn>, OwnTraits>,
], [ ], [
ExtendFn, ExtendFn,
SimplifyFn, SimplifyFn,
@@ -32,7 +32,7 @@ export class TraitExpression<
Pipe<[ Pipe<[
Super, Super,
...Call<Tuples.Map<TraitOwnImplClassFn>, OwnTraits>, ...Call<Tuples.Map<Trait.OwnImplClassFn>, OwnTraits>,
], [ ], [
Tuples.Map<StaticMembersFn>, Tuples.Map<StaticMembersFn>,
ExtendFn, ExtendFn,
@@ -92,7 +92,7 @@ export interface TraitExpressionAllTraitsFn extends Fn {
export type Implements<Exp extends TraitExpression<any, any, any>> = ( export type Implements<Exp extends TraitExpression<any, any, any>> = (
Exp extends TraitExpression<any, infer AllTraits, any> Exp extends TraitExpression<any, infer AllTraits, any>
? Pipe<AllTraits, [ ? Pipe<AllTraits, [
Tuples.Map<TraitOwnAbstractFn>, Tuples.Map<Trait.OwnAbstractFn>,
ExtendFn, ExtendFn,
SimplifyFn, SimplifyFn,
]> ]>