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

This commit is contained in:
Julien Valverdé
2024-02-21 04:36:59 +01:00
parent adf8439cd6
commit 9950335705

View File

@@ -105,6 +105,32 @@ export class TraitExpressionBuilder<
)
}
expressesFirst<
const T extends Trait<
TraitExpression<
typeof TraitExpression.NullSuperclass,
Trait<any, any, any, any>[]
>,
any,
any,
any
>[]
>(
...traits: T
) {
return new TraitExpressionBuilder(
this.expressionSuperclass,
uniq([
...traits.flatMap(trait => [
...trait.superExpression.traits,
trait,
]),
...this.expressionTraits,
]) as TraitsUniq<[...SpreadSupertraits<T>, ...Traits]>,
)
}
build() {
return new TraitExpression(
this.expressionSuperclass,