Interface AliasedExpression<T, A>

A type that holds an expression and an alias for it.

AliasedExpression<T, A> can be used in places where, in addition to the value type T, you also need a name A for that value. For example anything you can pass into the select method needs to implement an AliasedExpression<T, A>. A becomes the name of the selected expression in the result and T becomes its type.

Example

class SomeAliasedExpression<T, A extends string> implements AliasedExpression<T, A> {
#expression: Expression<T>
#alias: A

constructor(expression: Expression<T>, alias: A) {
this.#expression = expression
this.#alias = alias
}

get expression(): Expression<T> {
return this.#expression
}

get alias(): A {
return this.#alias
}

toOperationNode(): AliasNode {
return AliasNode.create(this.#expression.toOperationNode(), IdentifierNode.create(this.#alias))
}
}

Type Parameters

  • T

  • A extends string

Hierarchy

Implemented by

Accessors

Methods

Accessors

Methods

Generated using TypeDoc