UNPKG

flink-sql-language-server

Version:

A LSP-based language server for Apache Flink SQL

103 lines (102 loc) 6.8 kB
import { CommonTokenStream } from 'antlr4ts'; import { AbstractParseTreeVisitor } from 'antlr4ts/tree'; import { FormattingOptions } from 'vscode-languageserver'; import { TextEdit } from 'vscode-languageserver-textdocument'; import { AlterFunctionContext, AnalyzeContext, ArithmeticBinaryContext, ArithmeticUnaryContext, BeginStatementSetContext, CaseEndContext, CharsetLiteralContext, ColumnAssignmentContext, ColumnAssignmentsContext, ColumnDefinitionContext, ColumnsContext, ColumnsWithoutParenthesisContext, CommaTableContext, ComparisonContext, CreateFunctionContext, CreateMaterializedTableContext, CreateTableContext, CreateViewContext, CtesContext, DefineValuesContext, DereferenceContext, DistributedByContext, ElseExprContext, ExecuteStatementSetContext, ExistsContext, ExpressionsContext, FromTableContext, FunctionCallContext, GroupByContext, GroupItemsContext, HavingContext, InsertContext, InsertMultipleContext, IntoBucketsContext, JsonArrayAggFunctionContext, JsonArrayFunctionContext, JsonExistsFunctionContext, JsonObjectAggFunctionContext, JsonObjectFunctionContext, JsonQueryFunctionContext, JsonValueFunctionContext, LogicalBinaryContext, LogicalNotContext, MapQueryContext, MapTableContext, MatchRecognizeContext, ParenthesisGroupItemsContext, ParenthesisQueryContext, PartitionedByContext, PrimaryExprContext, ProjectItemContext, ProjectItemsContext, QueryContext, RenameToContext, RowTypeContext, SetValuesContext, SqlTypeNameContext, StarContext, StatementContext, StatementEndContext, TableConstraintContext, TableLateralContext, TableReferenceContext, TableSourceContext, ThenExprContext, ValueAssignmentContext, ValueAssignmentsContext, WatermarkDefinitionContext, WhenExprContext, WhereContext, WindowSelectContext, WindowSpecContext, WithItemContext, WithValuesContext } from '../lib/FlinkSQLParser'; import { FlinkSQLParserVisitor } from '../lib/FlinkSQLParserVisitor'; export declare class SpaceReplacerFormatVisitor extends AbstractParseTreeVisitor<void> implements FlinkSQLParserVisitor<void> { private tokens; private config; textEdits: TextEdit[]; private indentNumber; private indentString; private readonly newline; private readonly maxParenthesisLength; private readonly newlineRegex; constructor(tokens: CommonTokenStream, config: FormattingOptions); defaultResult(): void; private get indent(); private get newlineIndent(); private addIndent; private minusIndent; private updateBeforeNextTokenByContext; private updateAfterPreviousTokenByContext; private updateBeforeNextTokenByNode; private updateAfterPreviousTokenByNode; private alignColumnDefinitions; private handleAlignNextToken; visitStatement(ctx: StatementContext): void; visitStatementEnd(ctx: StatementEndContext): void; visitBeginStatementSet(ctx: BeginStatementSetContext): void; visitExecuteStatementSet(ctx: ExecuteStatementSetContext): void; visitCreateFunction(ctx: CreateFunctionContext): void; visitCreateView(ctx: CreateViewContext): void; visitCreateTable(ctx: CreateTableContext): void; visitCreateMaterializedTable(ctx: CreateMaterializedTableContext): void; visitDefineValues(ctx: DefineValuesContext): void; visitColumnDefinition(ctx: ColumnDefinitionContext): void; visitWatermarkDefinition(ctx: WatermarkDefinitionContext): void; visitTableConstraint(ctx: TableConstraintContext): void; visitWithValues(ctx: WithValuesContext): void; visitPartitionedBy(ctx: PartitionedByContext): void; visitDistributedBy(ctx: DistributedByContext): void; visitIntoBuckets(ctx: IntoBucketsContext): void; visitInsert(ctx: InsertContext): void; visitInsertMultiple(ctx: InsertMultipleContext): void; visitColumns(ctx: ColumnsContext): void; visitValueAssignments(ctx: ValueAssignmentsContext): void; visitValueAssignment(ctx: ValueAssignmentContext): void; visitColumnAssignments(ctx: ColumnAssignmentsContext): void; visitColumnAssignment(ctx: ColumnAssignmentContext): void; visitColumnsWithoutParenthesis(ctx: ColumnsWithoutParenthesisContext): void; visitAnalyze(ctx: AnalyzeContext): void; visitAlterFunction(ctx: AlterFunctionContext): void; visitRenameTo(ctx: RenameToContext): void; visitSetValues(ctx: SetValuesContext): void; visitQuery(ctx: QueryContext): void; visitParenthesisQuery(ctx: ParenthesisQueryContext): void; visitMapQuery(ctx: MapQueryContext): void; visitCtes(ctx: CtesContext): void; visitWithItem(ctx: WithItemContext): void; visitProjectItems(ctx: ProjectItemsContext): void; visitProjectItem(ctx: ProjectItemContext): void; visitFromTable(ctx: FromTableContext): void; visitWhere(ctx: WhereContext): void; visitGroupBy(ctx: GroupByContext): void; visitHaving(ctx: HavingContext): void; visitWindowSelect(ctx: WindowSelectContext): void; visitCommaTable(ctx: CommaTableContext): void; visitMapTable(ctx: MapTableContext): void; visitGroupItems(ctx: GroupItemsContext): void; visitParenthesisGroupItems(ctx: ParenthesisGroupItemsContext): void; visitTableReference(ctx: TableReferenceContext): void; visitTableSource(ctx: TableSourceContext): void; visitTableLateral(ctx: TableLateralContext): void; visitSqlTypeName(ctx: SqlTypeNameContext): void; visitRowType(ctx: RowTypeContext): void; visitFunctionCall(ctx: FunctionCallContext): void; visitJsonExistsFunction(ctx: JsonExistsFunctionContext): void; visitJsonValueFunction(ctx: JsonValueFunctionContext): void; visitJsonQueryFunction(ctx: JsonQueryFunctionContext): void; visitJsonObjectFunction(ctx: JsonObjectFunctionContext): void; visitJsonObjectAggFunction(ctx: JsonObjectAggFunctionContext): void; visitJsonArrayFunction(ctx: JsonArrayFunctionContext): void; visitJsonArrayAggFunction(ctx: JsonArrayAggFunctionContext): void; visitExpressions(ctx: ExpressionsContext): void; visitPrimaryExpr(ctx: PrimaryExprContext): void; visitArithmeticUnary(ctx: ArithmeticUnaryContext): void; visitArithmeticBinary(ctx: ArithmeticBinaryContext): void; visitComparison(ctx: ComparisonContext): void; visitWhenExpr(ctx: WhenExprContext): void; visitThenExpr(ctx: ThenExprContext): void; visitElseExpr(ctx: ElseExprContext): void; visitCaseEnd(ctx: CaseEndContext): void; visitLogicalNot(ctx: LogicalNotContext): void; visitExists(ctx: ExistsContext): void; visitLogicalBinary(ctx: LogicalBinaryContext): void; visitWindowSpec(ctx: WindowSpecContext): void; visitMatchRecognize(ctx: MatchRecognizeContext): void; visitCharsetLiteral(ctx: CharsetLiteralContext): void; visitDereference(ctx: DereferenceContext): void; visitStar(ctx: StarContext): void; }