@malloydata/malloy 0.0.22-dev230126015148 → 0.0.22-dev230206094309
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/dist/connection_utils.d.ts +0 -1
- package/dist/connection_utils.js +0 -66
- package/dist/dialect/dialect.d.ts +0 -66
- package/dist/dialect/dialect.js +0 -85
- package/dist/dialect/dialect_map.d.ts +0 -3
- package/dist/dialect/dialect_map.js +0 -45
- package/dist/dialect/duckdb.d.ts +0 -52
- package/dist/dialect/duckdb.js +0 -364
- package/dist/dialect/index.d.ts +0 -6
- package/dist/dialect/index.js +0 -37
- package/dist/dialect/postgres.d.ts +0 -52
- package/dist/dialect/postgres.js +0 -330
- package/dist/dialect/standardsql.d.ts +0 -49
- package/dist/dialect/standardsql.js +0 -381
- package/dist/index.d.ts +0 -10
- package/dist/index.js +0 -59
- package/dist/lang/ast/apply-expr.d.ts +0 -3
- package/dist/lang/ast/apply-expr.js +0 -34
- package/dist/lang/ast/ast-expr.d.ts +0 -206
- package/dist/lang/ast/ast-expr.js +0 -781
- package/dist/lang/ast/ast-main.d.ts +0 -915
- package/dist/lang/ast/ast-main.js +0 -3672
- package/dist/lang/ast/ast-time-expr.d.ts +0 -69
- package/dist/lang/ast/ast-time-expr.js +0 -389
- package/dist/lang/ast/ast-types.d.ts +0 -83
- package/dist/lang/ast/ast-types.js +0 -225
- package/dist/lang/ast/index.d.ts +0 -5
- package/dist/lang/ast/index.js +0 -44
- package/dist/lang/ast/time-utils.d.ts +0 -9
- package/dist/lang/ast/time-utils.js +0 -104
- package/dist/lang/field-utils.d.ts +0 -5
- package/dist/lang/field-utils.js +0 -43
- package/dist/lang/index.d.ts +0 -9
- package/dist/lang/index.js +0 -32
- package/dist/lang/lib/Malloy/MalloyLexer.d.ts +0 -165
- package/dist/lang/lib/Malloy/MalloyLexer.js +0 -1232
- package/dist/lang/lib/Malloy/MalloyParser.d.ts +0 -1947
- package/dist/lang/lib/Malloy/MalloyParser.js +0 -11909
- package/dist/lang/lib/Malloy/MalloyParserListener.d.ts +0 -2022
- package/dist/lang/lib/Malloy/MalloyParserListener.js +0 -4
- package/dist/lang/lib/Malloy/MalloyParserVisitor.d.ts +0 -1274
- package/dist/lang/lib/Malloy/MalloyParserVisitor.js +0 -4
- package/dist/lang/parse-log.d.ts +0 -27
- package/dist/lang/parse-log.js +0 -51
- package/dist/lang/parse-malloy.d.ts +0 -236
- package/dist/lang/parse-malloy.js +0 -746
- package/dist/lang/parse-to-ast.d.ts +0 -155
- package/dist/lang/parse-to-ast.js +0 -990
- package/dist/lang/parse-tree-walkers/document-completion-walker.d.ts +0 -10
- package/dist/lang/parse-tree-walkers/document-completion-walker.js +0 -148
- package/dist/lang/parse-tree-walkers/document-help-context-walker.d.ts +0 -9
- package/dist/lang/parse-tree-walkers/document-help-context-walker.js +0 -107
- package/dist/lang/parse-tree-walkers/document-highlight-walker.d.ts +0 -83
- package/dist/lang/parse-tree-walkers/document-highlight-walker.js +0 -385
- package/dist/lang/parse-tree-walkers/document-symbol-walker.d.ts +0 -11
- package/dist/lang/parse-tree-walkers/document-symbol-walker.js +0 -182
- package/dist/lang/parse-tree-walkers/explore-query-walker.d.ts +0 -34
- package/dist/lang/parse-tree-walkers/explore-query-walker.js +0 -74
- package/dist/lang/parse-tree-walkers/find-external-references.d.ts +0 -11
- package/dist/lang/parse-tree-walkers/find-external-references.js +0 -61
- package/dist/lang/reference-list.d.ts +0 -10
- package/dist/lang/reference-list.js +0 -90
- package/dist/lang/space-field.d.ts +0 -17
- package/dist/lang/space-field.js +0 -127
- package/dist/lang/test/document-help-context-walker.spec.d.ts +0 -1
- package/dist/lang/test/document-help-context-walker.spec.js +0 -55
- package/dist/lang/test/document-symbol-walker.spec.d.ts +0 -1
- package/dist/lang/test/document-symbol-walker.spec.js +0 -110
- package/dist/lang/test/field-symbols.spec.d.ts +0 -1
- package/dist/lang/test/field-symbols.spec.js +0 -180
- package/dist/lang/test/parse.spec.d.ts +0 -14
- package/dist/lang/test/parse.spec.js +0 -2134
- package/dist/lang/test/test-translator.d.ts +0 -38
- package/dist/lang/test/test-translator.js +0 -344
- package/dist/lang/zone.d.ts +0 -57
- package/dist/lang/zone.js +0 -107
- package/dist/malloy.d.ts +0 -1146
- package/dist/malloy.js +0 -2413
- package/dist/model/index.d.ts +0 -2
- package/dist/model/index.js +0 -45
- package/dist/model/malloy_query.d.ts +0 -351
- package/dist/model/malloy_query.js +0 -3174
- package/dist/model/malloy_types.d.ts +0 -551
- package/dist/model/malloy_types.js +0 -378
- package/dist/model/sql_block.d.ts +0 -7
- package/dist/model/sql_block.js +0 -56
- package/dist/model/utils.d.ts +0 -22
- package/dist/model/utils.js +0 -102
- package/dist/run_sql_options.d.ts +0 -3
- package/dist/run_sql_options.js +0 -25
- package/dist/runtime_types.d.ts +0 -105
- package/dist/runtime_types.js +0 -25
package/dist/model/index.d.ts
DELETED
package/dist/model/index.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright 2023 Google LLC
|
|
4
|
-
*
|
|
5
|
-
* Permission is hereby granted, free of charge, to any person obtaining
|
|
6
|
-
* a copy of this software and associated documentation files
|
|
7
|
-
* (the "Software"), to deal in the Software without restriction,
|
|
8
|
-
* including without limitation the rights to use, copy, modify, merge,
|
|
9
|
-
* publish, distribute, sublicense, and/or sell copies of the Software,
|
|
10
|
-
* and to permit persons to whom the Software is furnished to do so,
|
|
11
|
-
* subject to the following conditions:
|
|
12
|
-
*
|
|
13
|
-
* The above copyright notice and this permission notice shall be
|
|
14
|
-
* included in all copies or substantial portions of the Software.
|
|
15
|
-
*
|
|
16
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
17
|
-
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
18
|
-
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
19
|
-
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
20
|
-
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
21
|
-
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
22
|
-
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
23
|
-
*/
|
|
24
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
25
|
-
if (k2 === undefined) k2 = k;
|
|
26
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
27
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
28
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
29
|
-
}
|
|
30
|
-
Object.defineProperty(o, k2, desc);
|
|
31
|
-
}) : (function(o, m, k, k2) {
|
|
32
|
-
if (k2 === undefined) k2 = k;
|
|
33
|
-
o[k2] = m[k];
|
|
34
|
-
}));
|
|
35
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.flattenQuery = exports.QueryModel = exports.Segment = void 0;
|
|
40
|
-
__exportStar(require("./malloy_types"), exports);
|
|
41
|
-
var malloy_query_1 = require("./malloy_query");
|
|
42
|
-
Object.defineProperty(exports, "Segment", { enumerable: true, get: function () { return malloy_query_1.Segment; } });
|
|
43
|
-
Object.defineProperty(exports, "QueryModel", { enumerable: true, get: function () { return malloy_query_1.QueryModel; } });
|
|
44
|
-
Object.defineProperty(exports, "flattenQuery", { enumerable: true, get: function () { return malloy_query_1.flattenQuery; } });
|
|
45
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,351 +0,0 @@
|
|
|
1
|
-
import { Dialect, DialectFieldList } from "../dialect";
|
|
2
|
-
import { FieldDef, FieldRef, FilterExpression, ModelDef, Query, QueryFieldDef, StructDef, StructRef, OrderBy, ResultMetadataDef, Expr, FieldFragment, AggregateFragment, CompiledQuery, FilterFragment, PipeSegment, TurtleDef, QuerySegment, Filtered, ParameterFragment, Parameter, JoinRelationship, DialectFragment, UngroupFragment, NamedQuery, AnalyticFragment, ResultStructMetadataDef, SearchIndexResult } from "./malloy_types";
|
|
3
|
-
import { AndChain } from "./utils";
|
|
4
|
-
import { Connection } from "../runtime_types";
|
|
5
|
-
interface TurtleDefPlus extends TurtleDef, Filtered {
|
|
6
|
-
}
|
|
7
|
-
interface OutputPipelinedSQL {
|
|
8
|
-
sqlFieldName: string;
|
|
9
|
-
pipelineSQL: string;
|
|
10
|
-
}
|
|
11
|
-
declare class StageWriter {
|
|
12
|
-
withs: string[];
|
|
13
|
-
udfs: string[];
|
|
14
|
-
pdts: string[];
|
|
15
|
-
stagePrefix: string;
|
|
16
|
-
parent: StageWriter | undefined;
|
|
17
|
-
useCTE: boolean;
|
|
18
|
-
constructor(useCTE: boolean | undefined, parent: StageWriter | undefined);
|
|
19
|
-
getName(id: number): string;
|
|
20
|
-
root(): StageWriter;
|
|
21
|
-
addStage(sql: string): string;
|
|
22
|
-
addUDF(stageWriter: StageWriter, dialect: Dialect, structDef: StructDef): string;
|
|
23
|
-
addPDT(baseName: string, dialect: Dialect): string;
|
|
24
|
-
combineStages(includeLastStage: boolean): {
|
|
25
|
-
sql: string;
|
|
26
|
-
lastStageName: string | undefined;
|
|
27
|
-
};
|
|
28
|
-
/** emit the SQL for all the stages. */
|
|
29
|
-
generateSQLStages(): string;
|
|
30
|
-
generateCoorelatedSubQuery(dialect: Dialect, structDef: StructDef): string;
|
|
31
|
-
}
|
|
32
|
-
declare type QuerySomething = QueryField | QueryStruct | QueryTurtle;
|
|
33
|
-
declare class GenerateState {
|
|
34
|
-
whereSQL?: string;
|
|
35
|
-
applyValue?: string;
|
|
36
|
-
totalGroupSet: number;
|
|
37
|
-
withWhere(s?: string): GenerateState;
|
|
38
|
-
withApply(s: string): GenerateState;
|
|
39
|
-
withTotal(groupSet: number): GenerateState;
|
|
40
|
-
}
|
|
41
|
-
declare abstract class QueryNode {
|
|
42
|
-
fieldDef: FieldDef;
|
|
43
|
-
constructor(fieldDef: FieldDef);
|
|
44
|
-
getIdentifier(): string;
|
|
45
|
-
getChildByName(_name: string): QuerySomething | undefined;
|
|
46
|
-
}
|
|
47
|
-
declare class QueryField extends QueryNode {
|
|
48
|
-
fieldDef: FieldDef;
|
|
49
|
-
parent: QueryStruct;
|
|
50
|
-
constructor(fieldDef: FieldDef, parent: QueryStruct);
|
|
51
|
-
mayNeedUniqueKey(): boolean;
|
|
52
|
-
getJoinableParent(): QueryStruct;
|
|
53
|
-
caseGroup(groupSets: number[], s: string): string;
|
|
54
|
-
getFullOutputName(): string;
|
|
55
|
-
generateFieldFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: FieldFragment, state: GenerateState): string;
|
|
56
|
-
generateParameterFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: ParameterFragment, state: GenerateState): string;
|
|
57
|
-
generateFilterFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: FilterFragment, state: GenerateState): string;
|
|
58
|
-
generateDimFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: AggregateFragment, state: GenerateState): string;
|
|
59
|
-
generateUngroupedFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: UngroupFragment, state: GenerateState): string;
|
|
60
|
-
generateDistinctKeyIfNecessary(resultSet: FieldInstanceResult, context: QueryStruct, structPath: string | undefined): string | undefined;
|
|
61
|
-
generateSumFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: AggregateFragment, state: GenerateState): string;
|
|
62
|
-
generateSymmetricFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: AggregateFragment, state: GenerateState): string;
|
|
63
|
-
generateAvgFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: AggregateFragment, state: GenerateState): string;
|
|
64
|
-
generateCountFragment(resultSet: FieldInstanceResult, context: QueryStruct, expr: AggregateFragment, state: GenerateState): string;
|
|
65
|
-
generateDialect(resultSet: FieldInstanceResult, context: QueryStruct, expr: DialectFragment, state: GenerateState): string;
|
|
66
|
-
generateAnalyticFragment(resultStruct: FieldInstanceResult, context: QueryStruct, expr: AnalyticFragment, state: GenerateState): string;
|
|
67
|
-
generateExpressionFromExpr(resultSet: FieldInstanceResult, context: QueryStruct, e: Expr, state?: GenerateState): string;
|
|
68
|
-
getExpr(): Expr;
|
|
69
|
-
generateExpression(resultSet: FieldInstanceResult): string;
|
|
70
|
-
}
|
|
71
|
-
declare class QueryAtomicField extends QueryField {
|
|
72
|
-
includeInWildcard(): boolean;
|
|
73
|
-
isCalculated(): boolean;
|
|
74
|
-
getFilterList(): FilterExpression[];
|
|
75
|
-
hasExpression(): boolean;
|
|
76
|
-
}
|
|
77
|
-
declare class QueryFieldBoolean extends QueryAtomicField {
|
|
78
|
-
}
|
|
79
|
-
declare class QueryFieldStruct extends QueryAtomicField {
|
|
80
|
-
primaryKey: string;
|
|
81
|
-
constructor(fieldDef: FieldDef, parent: QueryStruct, primaryKey: string);
|
|
82
|
-
getName(): string;
|
|
83
|
-
getAsJoinedStructDef(foreignKeyName: string): StructDef;
|
|
84
|
-
}
|
|
85
|
-
declare type FieldUsage = {
|
|
86
|
-
type: "result";
|
|
87
|
-
resultIndex: number;
|
|
88
|
-
} | {
|
|
89
|
-
type: "where";
|
|
90
|
-
} | {
|
|
91
|
-
type: "dependant";
|
|
92
|
-
};
|
|
93
|
-
declare type FieldInstanceType = "field" | "query";
|
|
94
|
-
interface FieldInstance {
|
|
95
|
-
type: FieldInstanceType;
|
|
96
|
-
root(): FieldInstanceResultRoot;
|
|
97
|
-
}
|
|
98
|
-
declare class FieldInstanceField implements FieldInstance {
|
|
99
|
-
type: FieldInstanceType;
|
|
100
|
-
f: QueryField;
|
|
101
|
-
fieldUsage: FieldUsage;
|
|
102
|
-
additionalGroupSets: number[];
|
|
103
|
-
parent: FieldInstanceResult;
|
|
104
|
-
partitionSQL: string | undefined;
|
|
105
|
-
constructor(f: QueryField, fieldUsage: FieldUsage, parent: FieldInstanceResult);
|
|
106
|
-
root(): FieldInstanceResultRoot;
|
|
107
|
-
getSQL(): string;
|
|
108
|
-
getPartitionSQL(): string;
|
|
109
|
-
}
|
|
110
|
-
declare type RepeatedResultType = "nested" | "inline_all_numbers" | "inline";
|
|
111
|
-
declare type UngroupSet = {
|
|
112
|
-
type: "all" | "exclude";
|
|
113
|
-
fields: string[];
|
|
114
|
-
groupSet: number;
|
|
115
|
-
};
|
|
116
|
-
declare class FieldInstanceResult implements FieldInstance {
|
|
117
|
-
type: FieldInstanceType;
|
|
118
|
-
allFields: Map<string, FieldInstance>;
|
|
119
|
-
groupSet: number;
|
|
120
|
-
depth: number;
|
|
121
|
-
parent: FieldInstanceResult | undefined;
|
|
122
|
-
childGroups: number[];
|
|
123
|
-
turtleDef: TurtleDef;
|
|
124
|
-
firstSegment: PipeSegment;
|
|
125
|
-
hasHaving: boolean;
|
|
126
|
-
ungroupedSets: Map<string, UngroupSet>;
|
|
127
|
-
resultUsesUngrouped: boolean;
|
|
128
|
-
constructor(turtleDef: TurtleDef, parent: FieldInstanceResult | undefined);
|
|
129
|
-
addField(as: string, field: QueryField, usage: FieldUsage): void;
|
|
130
|
-
parentGroupSet(): number;
|
|
131
|
-
add(name: string, f: FieldInstance): void;
|
|
132
|
-
hasField(name: string): boolean;
|
|
133
|
-
getField(name: string): FieldInstanceField;
|
|
134
|
-
getFieldByNumber(index: number): {
|
|
135
|
-
name: string;
|
|
136
|
-
fif: FieldInstanceField;
|
|
137
|
-
};
|
|
138
|
-
computeGroups(nextGroupSetNumber: number, depth: number): {
|
|
139
|
-
nextGroupSetNumber: number;
|
|
140
|
-
maxDepth: number;
|
|
141
|
-
children: number[];
|
|
142
|
-
isComplex: boolean;
|
|
143
|
-
};
|
|
144
|
-
fields(fn?: undefined | ((field: FieldInstanceField) => boolean)): FieldInstanceField[];
|
|
145
|
-
fieldNames(fn: undefined | ((field: FieldInstanceField) => boolean)): string[];
|
|
146
|
-
getRepeatedResultType(): RepeatedResultType;
|
|
147
|
-
structs(): FieldInstanceResult[];
|
|
148
|
-
selectStructs(result: FieldInstanceResult[], fn: (result: FieldInstanceResult) => boolean): FieldInstanceResult[];
|
|
149
|
-
calculateDefaultOrderBy(): OrderBy[];
|
|
150
|
-
addStructToJoin(qs: QueryStruct, query: QueryQuery, mayNeedUniqueKey: boolean, joinStack: string[]): void;
|
|
151
|
-
findJoins(query: QueryQuery): void;
|
|
152
|
-
root(): FieldInstanceResultRoot;
|
|
153
|
-
getUngroupPartitions(ungroupSet: UngroupSet | undefined): FieldInstanceField[];
|
|
154
|
-
assignFieldsToGroups(): void;
|
|
155
|
-
}
|
|
156
|
-
declare class FieldInstanceResultRoot extends FieldInstanceResult {
|
|
157
|
-
joins: Map<string, JoinInstance>;
|
|
158
|
-
havings: AndChain;
|
|
159
|
-
isComplexQuery: boolean;
|
|
160
|
-
queryUsesPartitioning: boolean;
|
|
161
|
-
computeOnlyGroups: number[];
|
|
162
|
-
elimatedComputeGroups: boolean;
|
|
163
|
-
constructor(turtleDef: TurtleDef);
|
|
164
|
-
root(): FieldInstanceResultRoot;
|
|
165
|
-
eliminateComputeGroupsSQL(): string;
|
|
166
|
-
calculateSymmetricAggregates(): void;
|
|
167
|
-
}
|
|
168
|
-
declare class JoinInstance {
|
|
169
|
-
mayNeedUniqueKey: boolean;
|
|
170
|
-
makeUniqueKey: boolean;
|
|
171
|
-
leafiest: boolean;
|
|
172
|
-
parent: JoinInstance | undefined;
|
|
173
|
-
queryStruct: QueryStruct;
|
|
174
|
-
joinFilterConditions?: QueryFieldBoolean[];
|
|
175
|
-
alias: string;
|
|
176
|
-
children: JoinInstance[];
|
|
177
|
-
constructor(queryStruct: QueryStruct, alias: string, parent: JoinInstance | undefined);
|
|
178
|
-
parentRelationship(): "root" | JoinRelationship;
|
|
179
|
-
getDialectFieldList(): DialectFieldList;
|
|
180
|
-
}
|
|
181
|
-
/** nested query */
|
|
182
|
-
declare class QueryTurtle extends QueryField {
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Used by the translator to get the output StructDef of a pipe segment
|
|
186
|
-
*
|
|
187
|
-
* half translated to the new world of types ..
|
|
188
|
-
*/
|
|
189
|
-
export declare class Segment {
|
|
190
|
-
static nextStructDef(structDef: StructDef, segment: PipeSegment): StructDef;
|
|
191
|
-
}
|
|
192
|
-
declare type StageGroupMaping = {
|
|
193
|
-
fromGroup: number;
|
|
194
|
-
toGroup: number;
|
|
195
|
-
};
|
|
196
|
-
declare type StageOutputContext = {
|
|
197
|
-
sql: string[];
|
|
198
|
-
lateralJoinSQLExpressions: string[];
|
|
199
|
-
dimensionIndexes: number[];
|
|
200
|
-
fieldIndex: number;
|
|
201
|
-
groupsAggregated: StageGroupMaping[];
|
|
202
|
-
outputPipelinedSQL: OutputPipelinedSQL[];
|
|
203
|
-
};
|
|
204
|
-
/** Query builder object. */
|
|
205
|
-
declare class QueryQuery extends QueryField {
|
|
206
|
-
fieldDef: TurtleDef;
|
|
207
|
-
firstSegment: PipeSegment;
|
|
208
|
-
prepared: boolean;
|
|
209
|
-
maxDepth: number;
|
|
210
|
-
maxGroupSet: number;
|
|
211
|
-
rootResult: FieldInstanceResultRoot;
|
|
212
|
-
resultStage: string | undefined;
|
|
213
|
-
stageWriter: StageWriter | undefined;
|
|
214
|
-
constructor(fieldDef: TurtleDef, parent: QueryStruct, stageWriter: StageWriter | undefined);
|
|
215
|
-
static makeQuery(fieldDef: TurtleDef, parentStruct: QueryStruct, stageWriter?: StageWriter | undefined): QueryQuery;
|
|
216
|
-
getFieldList(): QueryFieldDef[];
|
|
217
|
-
expandField(f: QueryFieldDef): {
|
|
218
|
-
as: any;
|
|
219
|
-
field: QuerySomething;
|
|
220
|
-
};
|
|
221
|
-
expandDependantField(resultStruct: FieldInstanceResult, fieldRef: FieldRef): void;
|
|
222
|
-
expandWildCardStruct(struct: QueryStruct, expandChildren: boolean, filter?: ((qf: QueryNode) => boolean) | undefined): string[];
|
|
223
|
-
expandWildCards(fields: QueryFieldDef[], filter?: ((qf: QueryNode) => boolean) | undefined): QueryFieldDef[];
|
|
224
|
-
addDependantPath(resultStruct: FieldInstanceResult, context: QueryStruct, path: string, mayNeedUniqueKey: boolean, joinStack: string[]): void;
|
|
225
|
-
addDependantExpr(resultStruct: FieldInstanceResult, context: QueryStruct, e: Expr, joinStack: string[]): void;
|
|
226
|
-
addDependancies(resultStruct: FieldInstanceResult, field: QueryField): void;
|
|
227
|
-
expandFields(resultStruct: FieldInstanceResult): void;
|
|
228
|
-
expandFilters(resultStruct: FieldInstanceResult): void;
|
|
229
|
-
generateSQLFilters(resultStruct: FieldInstanceResult, which: "where" | "having", filterList?: FilterExpression[] | undefined): AndChain;
|
|
230
|
-
prepare(_stageWriter: StageWriter | undefined): void;
|
|
231
|
-
getResultMetadata(fi: FieldInstance): ResultStructMetadataDef | ResultMetadataDef | undefined;
|
|
232
|
-
/** returns a fields and primary key of a struct for this query */
|
|
233
|
-
getResultStructDef(resultStruct?: FieldInstanceResult, isRoot?: boolean): StructDef;
|
|
234
|
-
generateSQLJoinBlock(stageWriter: StageWriter, ji: JoinInstance): string;
|
|
235
|
-
generateSQLJoins(stageWriter: StageWriter): string;
|
|
236
|
-
genereateSQLOrderBy(queryDef: QuerySegment, resultStruct: FieldInstanceResult): string;
|
|
237
|
-
generateSimpleSQL(stageWriter: StageWriter): string;
|
|
238
|
-
generatePipelinedStages(outputPipelinedSQL: OutputPipelinedSQL[], lastStageName: string, stageWriter: StageWriter): string;
|
|
239
|
-
generateStage0Fields(resultSet: FieldInstanceResult, output: StageOutputContext, stageWriter: StageWriter): void;
|
|
240
|
-
generateSQLWhereChildren(resultStruct: FieldInstanceResult): AndChain;
|
|
241
|
-
generateSQLWhereTurtled(): string;
|
|
242
|
-
generateSQLHavingLimit(stageWriter: StageWriter, lastStageName: string): string;
|
|
243
|
-
generateSQLStage0(stageWriter: StageWriter): string;
|
|
244
|
-
generateDepthNFields(depth: number, resultSet: FieldInstanceResult, output: StageOutputContext, stageWriter: StageWriter): void;
|
|
245
|
-
generateSQLDepthN(depth: number, stageWriter: StageWriter, stageName: string): string;
|
|
246
|
-
genereateSQLCombineTurtles(stageWriter: StageWriter, stage0Name: string): string;
|
|
247
|
-
generateTurtleSQL(resultStruct: FieldInstanceResult, stageWriter: StageWriter, sqlFieldName: string, outputPipelinedSQL: OutputPipelinedSQL[]): string;
|
|
248
|
-
generateTurtlePipelineSQL(fi: FieldInstanceResult, stageWriter: StageWriter, sourceSQLExpression: string): {
|
|
249
|
-
structDef: StructDef;
|
|
250
|
-
pipeOut: any;
|
|
251
|
-
};
|
|
252
|
-
generateComplexSQL(stageWriter: StageWriter): string;
|
|
253
|
-
generateSQL(stageWriter: StageWriter): string;
|
|
254
|
-
toMalloy(): string;
|
|
255
|
-
generateSQLFromPipeline(stageWriter: StageWriter): {
|
|
256
|
-
lastStageName: string;
|
|
257
|
-
outputStruct: StructDef;
|
|
258
|
-
};
|
|
259
|
-
}
|
|
260
|
-
/** Structure object as it is used to build a query */
|
|
261
|
-
declare class QueryStruct extends QueryNode {
|
|
262
|
-
fieldDef: StructDef;
|
|
263
|
-
parent: QueryStruct | undefined;
|
|
264
|
-
model: QueryModel;
|
|
265
|
-
nameMap: Map<string, QuerySomething>;
|
|
266
|
-
pathAliasMap: Map<string, string>;
|
|
267
|
-
dialect: Dialect;
|
|
268
|
-
connectionName: string;
|
|
269
|
-
constructor(fieldDef: StructDef, parent: {
|
|
270
|
-
struct: QueryStruct;
|
|
271
|
-
} | {
|
|
272
|
-
model: QueryModel;
|
|
273
|
-
});
|
|
274
|
-
parameters(): Record<string, Parameter>;
|
|
275
|
-
addFieldsFromFieldList(fields: FieldDef[]): void;
|
|
276
|
-
getAliasIdentifier(): string;
|
|
277
|
-
getAsQueryField(): QueryFieldStruct;
|
|
278
|
-
getSQLIdentifier(): string;
|
|
279
|
-
getIdentifier(): string;
|
|
280
|
-
getFullOutputName(): string;
|
|
281
|
-
needsSymetricCalculation(resultSet: FieldInstanceResult): boolean;
|
|
282
|
-
unnestWithNumbers(): boolean;
|
|
283
|
-
getJoinableParent(): QueryStruct;
|
|
284
|
-
addFieldToNameMap(as: string, n: QuerySomething): void;
|
|
285
|
-
/** the the primary key or throw an error. */
|
|
286
|
-
getPrimaryKeyField(fieldDef: FieldDef): any;
|
|
287
|
-
/**
|
|
288
|
-
* called after all structure has been loaded. Examine this structure to see
|
|
289
|
-
* if if it is based on a query and if it is, add the output fields (unless
|
|
290
|
-
* they exist) to the structure.
|
|
291
|
-
*/
|
|
292
|
-
resolveQueryFields(): void;
|
|
293
|
-
getModel(): QueryModel;
|
|
294
|
-
setParent(parent: {
|
|
295
|
-
struct: QueryStruct;
|
|
296
|
-
} | {
|
|
297
|
-
model: QueryModel;
|
|
298
|
-
}): void;
|
|
299
|
-
/** makes a new queryable field object from a fieldDef */
|
|
300
|
-
makeQueryField(field: FieldDef): QueryField;
|
|
301
|
-
/**
|
|
302
|
-
* return a field if it exists, make one if we are passed a field definition.
|
|
303
|
-
*/
|
|
304
|
-
getOrMakeField(fieldRef: FieldRef): QuerySomething;
|
|
305
|
-
/** returns a dimension for the given name or make one. */
|
|
306
|
-
getOrMakeDimension(fieldRef: FieldRef): QueryAtomicField;
|
|
307
|
-
structSourceSQL(stageWriter: StageWriter): string;
|
|
308
|
-
root(): QueryStruct;
|
|
309
|
-
primaryKey(): QueryAtomicField | undefined;
|
|
310
|
-
/** get the componennts of a field path */
|
|
311
|
-
static resolvePath(name: string): string[];
|
|
312
|
-
getChildByName(name: string): QuerySomething | undefined;
|
|
313
|
-
/** convert a name into a field reference */
|
|
314
|
-
getFieldByName(name: string): QuerySomething;
|
|
315
|
-
getQueryFieldByName(name: string): QuerySomething;
|
|
316
|
-
getDimensionOrMeasureByName(name: string): QueryAtomicField;
|
|
317
|
-
/** returns a query object for the given name */
|
|
318
|
-
getDimensionByName(name: string): QueryAtomicField;
|
|
319
|
-
/** returns a query object for the given name */
|
|
320
|
-
getStructByName(name: string): QueryStruct;
|
|
321
|
-
getDistinctKey(): QueryAtomicField;
|
|
322
|
-
flattenTurtleDef(turtleDef: TurtleDef | TurtleDefPlus): TurtleDef;
|
|
323
|
-
}
|
|
324
|
-
/** the resulting SQL and the shape of the data at each stage of the pipeline */
|
|
325
|
-
interface QueryResults {
|
|
326
|
-
lastStageName: string;
|
|
327
|
-
stageWriter: StageWriter;
|
|
328
|
-
structs: StructDef[];
|
|
329
|
-
malloy: string;
|
|
330
|
-
connectionName: string;
|
|
331
|
-
}
|
|
332
|
-
/** start here */
|
|
333
|
-
export declare class QueryModel {
|
|
334
|
-
dialect: Dialect;
|
|
335
|
-
modelDef: ModelDef | undefined;
|
|
336
|
-
structs: Map<string, QueryStruct>;
|
|
337
|
-
constructor(modelDef: ModelDef | undefined);
|
|
338
|
-
loadModelFromDef(modelDef: ModelDef): void;
|
|
339
|
-
parseQueryPath(name: string): {
|
|
340
|
-
struct: QueryStruct;
|
|
341
|
-
queryName: string;
|
|
342
|
-
};
|
|
343
|
-
getStructByName(name: string): QueryStruct;
|
|
344
|
-
getStructFromRef(structRef: StructRef): QueryStruct;
|
|
345
|
-
loadQuery(query: Query, stageWriter: StageWriter | undefined, emitFinalStage?: boolean): QueryResults;
|
|
346
|
-
compileQuery(query: Query, finalize?: boolean): CompiledQuery;
|
|
347
|
-
exploreSearchSQLMap: Map<any, any>;
|
|
348
|
-
searchIndex(connection: Connection, explore: string, searchValue: string, limit?: number, searchField?: string | undefined): Promise<SearchIndexResult[] | undefined>;
|
|
349
|
-
}
|
|
350
|
-
export declare function flattenQuery(model: ModelDef, query: NamedQuery): TurtleDef;
|
|
351
|
-
export {};
|