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 f59706d994 - Show all commits

View File

@@ -1,5 +1,6 @@
import { Simplify } from "type-fest"
import { TraitImplInstance, expresses, trait } from "."
import { TraitAbstractMembers, TraitImplInstance, expresses, trait } from "."
import { MergeInheritanceTree, TraitsAbstractMembers } from "./util"
const PrintsHelloOnNew = trait()(Super =>
@@ -22,11 +23,16 @@ const Identifiable = <ID>() => (
)
type Test = Simplify<TraitImplInstance<ReturnType<typeof Identifiable<bigint>>>>
// type Test = Simplify<TraitImplInstance<ReturnType<typeof Identifiable<bigint>>>>
type Test1 = [
TraitAbstractMembers<ReturnType<typeof Identifiable<bigint>>>,
TraitAbstractMembers<ReturnType<typeof Identifiable<bigint>>>
]
type Test2 = MergeInheritanceTree<Test1>
const appliedIdentifiable = Identifiable<bigint>().apply({} as any)
const exp = expresses(Identifiable<bigint>())
const exp = expresses(Identifiable<bigint>(), Identifiable<number>())
class User implements ReturnType<typeof exp.implements> {
id: bigint = -1n