rhombic
Version:
SQL parsing, lineage extraction and manipulation
49 lines • 1.83 kB
TypeScript
import { ColumnPrimaryContext, ValueExpressionContext, BooleanExpressionValueContext } from "../Context";
import { IToken } from "chevrotain";
declare type BooleanExpressionValueContextWithColumnPrimary = BooleanExpressionValueContext & {
columnPrimary: Array<{
name: "columnPrimary";
children: ColumnPrimaryContext;
}>;
BinaryOperator: IToken[];
valueExpression: Array<{
name: "valueExpression";
children: ValueExpressionContext;
}>;
};
declare type BinaryOperation = BooleanExpressionValueContext & {
columnPrimary: Array<{
name: "columnPrimary";
children: ColumnPrimaryContext;
}>;
BinaryOperator: IToken[];
valueExpression: Array<{
name: "valueExpression";
children: ValueExpressionContext;
}>;
};
declare type MultivalOperation = BooleanExpressionValueContext & {
MultivalOperator: IToken[];
LParen: IToken[];
valueExpression: Array<{
name: "valueExpression";
children: ValueExpressionContext;
}>;
Comma?: IToken[];
RParen: IToken[];
};
declare type UnaryOperation = BooleanExpressionValueContext & {
IsNull?: IToken[];
IsNotNull?: IToken[];
};
/**
* Type guard to discriminate if the value have columnPrimary.
*
* @param ctx BooleanExpressionValueContext
*/
export declare const hasColumnPrimary: (ctx: BooleanExpressionValueContext) => ctx is BooleanExpressionValueContextWithColumnPrimary;
export declare const isBinaryOperation: (ctx: BooleanExpressionValueContext) => ctx is BinaryOperation;
export declare const isMultivalOperation: (ctx: BooleanExpressionValueContext) => ctx is MultivalOperation;
export declare const isUnaryOperation: (ctx: BooleanExpressionValueContext) => ctx is UnaryOperation;
export {};
//# sourceMappingURL=booleanExpressionValue.d.ts.map