UNPKG

flink-sql-language-server

Version:

A LSP-based language server for Apache Flink SQL

110 lines (109 loc) 6.94 kB
import { CommonTokenStream, Token } from 'antlr4ts'; import { AbstractParseTreeVisitor, ErrorNode } from 'antlr4ts/tree'; import { TerminalNode } from 'antlr4ts/tree/TerminalNode'; import { FormattingOptions } from 'vscode-languageserver'; import { AggregateFilterContext, AggregateWithinContext, AsDatabaseContext, AsTableContext, CaseEndContext, CharsetIntroducerContext, CharsetLiteralContext, ColumnsContext, CommentContext, CreateViewContext, DefineItemsContext, DefineMatchContext, DefineValuesContext, ElseExprContext, ExcludingTableContext, ExplainContext, ExpressionsContext, ForPivotListContext, FromTableContext, GroupByContext, GroupingSetsContext, GroupItemContext, GroupItemsContext, HavingContext, HintsContext, IncludingTableContext, InPivotExprsContext, InsertContext, JsonFunctionContext, LikeConfigContext, LikeOptionsContext, LikeTableContext, LogicalBindContext, MapQueryContext, MapTableContext, MatchRecognizeContext, MeasureColumnsContext, MeasuresContext, OrderByContext, OrderItemsContext, OverWindowContext, ParenthesisExpressionsContext, ParenthesisGroupItemsContext, ParenthesisQueryContext, PartitionByContext, PartitionContext, PartitionedByContext, PatternMatchContext, PivotContext, ProgramContext, ProjectItemsContext, QueryFetchContext, QueryLimitContext, QueryOffsetContext, QueryOrderByContext, RenameToContext, SelectContext, SetValuesContext, StatementEndContext, SubsetItemsContext, SubsetMatchContext, TableExpressionContext, TableLateralContext, TableQueryContext, TableReferenceContext, TemporalFunctionContext, ThenExprContext, ValueAssignmentsContext, ValuesRowsContext, ValuesRowsParenthesisContext, WhenExprContext, WhereContext, WindowSelectContext, WindowSpecContext, WithValuesContext } from '../lib/FlinkSQLParser'; import { FlinkSQLParserVisitor } from '../lib/FlinkSQLParserVisitor'; export declare class AssembleTokensVisitor extends AbstractParseTreeVisitor<string> implements FlinkSQLParserVisitor<string> { private tokens; private config; private indentNumber; private indentString; private readonly newline; private readonly maxLineLength; visitedCommentTokens: WeakSet<Token>; constructor(tokens: CommonTokenStream, config: FormattingOptions); defaultResult(): string; aggregateResult(aggregate: string, nextResult: string): string; private get indent(); private get newlineIndent(); private addIndent; private minusIndent; private handleInlineClause; private handleInlineParenthesis; private handleInvocation; private addNewlineVisit; private addNewlineIndent; private isBeforeComment; private isAfterComment; private getNewlineIfNotAfterComment; private handleComma; private containComment; visitTerminal(node: TerminalNode): string; visitErrorNode(node: ErrorNode): string; visitProgram(ctx: ProgramContext): string; visitStatementEnd(ctx: StatementEndContext): string; visitTemporalFunction(ctx: TemporalFunctionContext): string; visitJsonFunction(ctx: JsonFunctionContext): string; visitWhenExpr(ctx: WhenExprContext): string; visitThenExpr(ctx: ThenExprContext): string; visitElseExpr(ctx: ElseExprContext): string; visitCaseEnd(ctx: CaseEndContext): string; visitColumns(ctx: ColumnsContext): string; visitValueAssignments(ctx: ValueAssignmentsContext): string; visitParenthesisQuery(ctx: ParenthesisQueryContext): string; visitLogicalBind(ctx: LogicalBindContext): string; visitParenthesisExpressions(ctx: ParenthesisExpressionsContext): string; visitExpressions(ctx: ExpressionsContext): string; visitAggregateFilter(ctx: AggregateFilterContext): string; visitAggregateWithin(ctx: AggregateWithinContext): string; visitOverWindow(ctx: OverWindowContext): string; visitExplain(ctx: ExplainContext): string; visitInsert(ctx: InsertContext): string; visitPartition(ctx: PartitionContext): string; visitCreateView(ctx: CreateViewContext): string; visitDefineValues(ctx: DefineValuesContext): string; visitLikeConfig(ctx: LikeConfigContext): string; visitLikeOptions(ctx: LikeOptionsContext): string; visitComment(ctx: CommentContext): string; visitPartitionedBy(ctx: PartitionedByContext): string; visitWithValues(ctx: WithValuesContext): string; visitLikeTable(ctx: LikeTableContext): string; visitAsTable(ctx: AsTableContext): string; visitAsDatabase(ctx: AsDatabaseContext): string; visitIncludingTable(ctx: IncludingTableContext): string; visitExcludingTable(ctx: ExcludingTableContext): string; visitMapQuery(ctx: MapQueryContext): string; visitMapTable(ctx: MapTableContext): string; visitValuesRows(ctx: ValuesRowsContext): string; visitValuesRowsParenthesis(ctx: ValuesRowsParenthesisContext): string; visitQueryOrderBy(ctx: QueryOrderByContext): string; visitQueryLimit(ctx: QueryLimitContext): string; visitQueryOffset(ctx: QueryOffsetContext): string; visitQueryFetch(ctx: QueryFetchContext): string; visitTableQuery(ctx: TableQueryContext): string; visitProjectItems(ctx: ProjectItemsContext): string; visitTableExpression(ctx: TableExpressionContext): string; visitTableReference(ctx: TableReferenceContext): string; visitTableLateral(ctx: TableLateralContext): string; visitOrderItems(ctx: OrderItemsContext): string; visitGroupItem(ctx: GroupItemContext): string; visitGroupItems(ctx: GroupItemsContext): string; visitParenthesisGroupItems(ctx: ParenthesisGroupItemsContext): string; visitGroupingSets(ctx: GroupingSetsContext): string; visitPartitionBy(ctx: PartitionByContext): string; visitOrderBy(ctx: OrderByContext): string; visitWindowSpec(ctx: WindowSpecContext): string; visitSelect(ctx: SelectContext): string; visitFromTable(ctx: FromTableContext): string; visitWhere(ctx: WhereContext): string; visitGroupBy(ctx: GroupByContext): string; visitHaving(ctx: HavingContext): string; visitWindowSelect(ctx: WindowSelectContext): string; visitHints(ctx: HintsContext): string; visitPivot(ctx: PivotContext): string; visitForPivotList(ctx: ForPivotListContext): string; visitInPivotExprs(ctx: InPivotExprsContext): string; visitMatchRecognize(ctx: MatchRecognizeContext): string; visitMeasures(ctx: MeasuresContext): string; visitSubsetMatch(ctx: SubsetMatchContext): string; visitPatternMatch(ctx: PatternMatchContext): string; visitDefineMatch(ctx: DefineMatchContext): string; visitMeasureColumns(ctx: MeasureColumnsContext): string; visitSubsetItems(ctx: SubsetItemsContext): string; visitDefineItems(ctx: DefineItemsContext): string; visitRenameTo(ctx: RenameToContext): string; visitSetValues(ctx: SetValuesContext): string; visitCharsetIntroducer(ctx: CharsetIntroducerContext): string; visitCharsetLiteral(ctx: CharsetLiteralContext): string; }