This commit is contained in:
32
src/tests.ts
32
src/tests.ts
@@ -1,4 +1,4 @@
|
||||
import { Implements, TraitAbstractMembers, extendsAndExpresses, trait } from "."
|
||||
import { Implements, TraitAbstractMembers, expression, trait } from "."
|
||||
|
||||
|
||||
const PrintsHelloOnNew = trait()(Super =>
|
||||
@@ -44,21 +44,25 @@ const ActiveStatefulSubscription = trait<ActiveStatefulSubscriptionAbstractMembe
|
||||
|
||||
class TestSuperclass {
|
||||
// id: number = 69
|
||||
static test = 69
|
||||
// static test = 69
|
||||
}
|
||||
|
||||
|
||||
const User = extendsAndExpresses(
|
||||
TestSuperclass,
|
||||
PrintsHelloOnNew,
|
||||
Identifiable<bigint>(),
|
||||
// Identifiable<number>()
|
||||
).then(e =>
|
||||
class User
|
||||
extends e.extends()
|
||||
implements Implements<typeof e> {
|
||||
id: bigint = -1n
|
||||
}
|
||||
)
|
||||
const builder = expression
|
||||
.extends(TestSuperclass)
|
||||
.expresses(
|
||||
// PrintsHelloOnNew,
|
||||
Identifiable<bigint>(),
|
||||
// Identifiable<number>(),
|
||||
)
|
||||
|
||||
type Impl = Implements<typeof builder.expression>
|
||||
|
||||
|
||||
const exp = builder.get()
|
||||
|
||||
class User extends exp.extends() implements (typeof exp.implements) {
|
||||
// id: bigint = -1n
|
||||
}
|
||||
|
||||
console.log(new User())
|
||||
|
||||
Reference in New Issue
Block a user