Trait examples

This commit is contained in:
Julien Valverdé
2024-01-28 20:23:44 +01:00
parent e46f78d93e
commit 096d4a92e7

View File

@@ -1,4 +1,20 @@
import { trait } from "." import { trait } from "."
const PrintsHelloOnNew = trait() const PrintsHelloOnNew = trait()(Super =>
class PrintsHelloOnNew extends Super {
constructor(...args: any[]) {
super(...args)
console.log("Hello!")
}
}
)
const Identifiable = <ID>() =>
trait<{ id: ID }>()(Super =>
class Identifiable extends Super {
equals(el: Identifiable) {
return this.id === el.id
}
}
)