Skip to main content

Class: Conditional

Defined in: packages/core/src/plan/operators/item/conditional.ts:12

A CASE / IF-THEN-ELSE expression: evaluates condition (if present), matches against whenThens in order, and falls back to defaultCase.

Implements​

Constructors​

Constructor​

new Conditional(lang, condition, whenThens, defaultCase): Conditional

Defined in: packages/core/src/plan/operators/item/conditional.ts:16

Parameters​

ParameterTypeDescription
langLowercase<string>PlanOperator.lang
conditionPlanOperator | ASTIdentifierSearched-CASE operand; null for a simple CASE without a common operand.
whenThens[PlanOperator | ASTIdentifier, PlanOperator | ASTIdentifier][]Ordered list of [WHEN, THEN] pairs.
defaultCasePlanOperator | ASTIdentifierThe ELSE expression; null means return null when no branch matches.

Returns​

Conditional

Properties​

[CalcIntermediate]​

[CalcIntermediate]: boolean = true

Defined in: packages/core/src/plan/operators/item/conditional.ts:14

Marks this as a CalcIntermediate sub-operator of a Calculation.


condition​

condition: PlanOperator | ASTIdentifier

Defined in: packages/core/src/plan/operators/item/conditional.ts:20

Searched-CASE operand; null for a simple CASE without a common operand.


defaultCase​

defaultCase: PlanOperator | ASTIdentifier

Defined in: packages/core/src/plan/operators/item/conditional.ts:27

The ELSE expression; null means return null when no branch matches.


lang​

lang: Lowercase<string>

Defined in: packages/core/src/plan/operators/item/conditional.ts:18

PlanOperator.lang

Implementation of​

PlanOperator.lang


whenThens​

whenThens: [PlanOperator | ASTIdentifier, PlanOperator | ASTIdentifier][]

Defined in: packages/core/src/plan/operators/item/conditional.ts:22

Ordered list of [WHEN, THEN] pairs.

Methods​

accept()​

accept<Ret, Arg>(visitors, arg?): Ret

Defined in: packages/core/src/plan/operators/item/conditional.ts:40

PlanOperator.accept

Type Parameters​

Type Parameter
Ret
Arg

Parameters​

ParameterType
visitorsRecord<string, PlanVisitor<Ret, Arg>>
arg?Arg

Returns​

Ret

Implementation of​

PlanOperator.accept


clone()​

clone(meta?): Conditional

Defined in: packages/core/src/plan/operators/item/conditional.ts:78

Clone this FnCall

Parameters​

ParameterTypeDescription
meta?ArgMeta[]provided by cloned Calculation, should be modified in-place to reflect new locations of arguments

Returns​

Conditional

Implementation of​

PlanOperator.clone


getChildren()​

getChildren(): PlanOperator[]

Defined in: packages/core/src/plan/operators/item/conditional.ts:67

PlanOperator.getChildren

Returns​

PlanOperator[]

Implementation of​

PlanOperator.getChildren


getDependencies()​

getDependencies(): IdSet

Defined in: packages/core/src/plan/operators/item/conditional.ts:104

PlanOperator.getDependencies

Returns​

IdSet

Implementation of​

PlanOperator.getDependencies


replaceChild()​

replaceChild(current, replacement): void

Defined in: packages/core/src/plan/operators/item/conditional.ts:47

PlanOperator.replaceChild

Parameters​

ParameterType
currentPlanOperator
replacementPlanOperator

Returns​

void

Implementation of​

PlanOperator.replaceChild