UNPKG

@selfage/generator_cli

Version:

Code generation for message, service, and database.

44 lines (43 loc) 1.75 kB
import { SpannerDatabaseDefinition, SpannerJoinOnLeaf, SpannerWhereConcat, SpannerWhereLeaf } from "./definition"; import { DefinitionResolver } from "./definition_resolver"; import { OutputContentBuilder } from "./output_content_builder"; export declare class SpannerDatabaseGenerator { private definitionModulePath; private spannerDatabaseDefinition; private definitionResolver; private outputContentMap; private databaseTables; private ddlContentBuilder; private tableDdls; private sqlContentBuilder; private inputArgs; private inputQueryTypes; private inputConversions; private currentDefaultTableAlias; private currentTableAliases; private currentJoinRightTable; private currentJoinRightTableAlias; private outputFields; private outputConversions; private outputFieldDescriptors; constructor(definitionModulePath: string, spannerDatabaseDefinition: SpannerDatabaseDefinition, definitionResolver: DefinitionResolver, outputContentMap: Map<string, OutputContentBuilder>); generate(): void; private generateSpannerTable; private generateSpannerTaskTable; private resolveTableAlias; private generateSpannerInsert; private generateSpannerUpdate; private generateSpannerDelete; private generateSpannerSelect; generateWhere(loggingPrefix: string, where: SpannerWhereConcat | SpannerWhereLeaf): string; private generateWhereConcat; private generateWhereLeaf; private generateJoinOn; private generateJoinOnConcat; generateJoinOnLeaf(loggingPrefix: string, leaf: SpannerJoinOnLeaf): string; private generateFunction; private clearInput; private collectInput; private clearOutput; private collectOuptut; }