@malloydata/malloy 0.0.24-dev230224184907 → 0.0.24-dev230228224434
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/dist/connection_utils.js +10 -10
- package/dist/dialect/dialect.d.ts +2 -2
- package/dist/dialect/dialect.js +13 -13
- package/dist/dialect/dialect_map.d.ts +1 -1
- package/dist/dialect/duckdb.d.ts +3 -3
- package/dist/dialect/duckdb.js +44 -44
- package/dist/dialect/index.d.ts +6 -6
- package/dist/dialect/postgres.d.ts +3 -3
- package/dist/dialect/postgres.js +46 -46
- package/dist/dialect/standardsql.d.ts +4 -4
- package/dist/dialect/standardsql.js +51 -51
- package/dist/index.d.ts +10 -10
- package/dist/lang/ast/ast-utils.d.ts +1 -1
- package/dist/lang/ast/ast-utils.js +3 -3
- package/dist/lang/ast/elements/define-query.d.ts +3 -3
- package/dist/lang/ast/elements/define-query.js +6 -6
- package/dist/lang/ast/elements/define-source.d.ts +4 -4
- package/dist/lang/ast/elements/define-source.js +8 -8
- package/dist/lang/ast/elements/import-statement.d.ts +2 -2
- package/dist/lang/ast/elements/import-statement.js +7 -7
- package/dist/lang/ast/elements/pipeline-desc.d.ts +5 -5
- package/dist/lang/ast/elements/pipeline-desc.js +11 -11
- package/dist/lang/ast/elements/refined-source.d.ts +4 -4
- package/dist/lang/ast/elements/refined-source.js +6 -6
- package/dist/lang/ast/elements/source.d.ts +3 -3
- package/dist/lang/ast/elements/source.js +1 -1
- package/dist/lang/ast/error-factory.d.ts +1 -1
- package/dist/lang/ast/error-factory.js +15 -15
- package/dist/lang/ast/executors/index-executor.d.ts +7 -7
- package/dist/lang/ast/executors/index-executor.js +4 -4
- package/dist/lang/ast/executors/project-executor.d.ts +5 -5
- package/dist/lang/ast/executors/project-executor.js +2 -2
- package/dist/lang/ast/executors/reduce-executor.d.ts +8 -8
- package/dist/lang/ast/executors/reduce-executor.js +5 -5
- package/dist/lang/ast/expressions/apply.d.ts +2 -2
- package/dist/lang/ast/expressions/apply.js +1 -1
- package/dist/lang/ast/expressions/binary-boolean.d.ts +3 -3
- package/dist/lang/ast/expressions/binary-boolean.js +6 -6
- package/dist/lang/ast/expressions/binary-numeric.d.ts +3 -3
- package/dist/lang/ast/expressions/binary-numeric.js +2 -2
- package/dist/lang/ast/expressions/boolean.d.ts +4 -4
- package/dist/lang/ast/expressions/boolean.js +2 -2
- package/dist/lang/ast/expressions/constant-sub-expression.d.ts +4 -4
- package/dist/lang/ast/expressions/constant-sub-expression.js +12 -12
- package/dist/lang/ast/expressions/expr-add-sub.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-add-sub.js +1 -1
- package/dist/lang/ast/expressions/expr-aggregate-function.d.ts +5 -5
- package/dist/lang/ast/expressions/expr-aggregate-function.js +15 -15
- package/dist/lang/ast/expressions/expr-alternation-tree.d.ts +6 -6
- package/dist/lang/ast/expressions/expr-alternation-tree.js +6 -6
- package/dist/lang/ast/expressions/expr-asymmetric.d.ts +5 -5
- package/dist/lang/ast/expressions/expr-asymmetric.js +3 -3
- package/dist/lang/ast/expressions/expr-avg.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-avg.js +2 -2
- package/dist/lang/ast/expressions/expr-cast.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-cast.js +6 -6
- package/dist/lang/ast/expressions/expr-compare.d.ts +5 -5
- package/dist/lang/ast/expressions/expr-compare.js +9 -9
- package/dist/lang/ast/expressions/expr-count-distinct.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-count-distinct.js +1 -1
- package/dist/lang/ast/expressions/expr-count.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-count.js +10 -10
- package/dist/lang/ast/expressions/expr-filter.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-filter.js +13 -13
- package/dist/lang/ast/expressions/expr-func.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-func.js +8 -8
- package/dist/lang/ast/expressions/expr-granular-time.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-granular-time.js +17 -17
- package/dist/lang/ast/expressions/expr-id-reference.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-id-reference.js +11 -11
- package/dist/lang/ast/expressions/expr-logical-op.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-logical-op.js +1 -1
- package/dist/lang/ast/expressions/expr-max.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-max.js +1 -1
- package/dist/lang/ast/expressions/expr-min.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-min.js +1 -1
- package/dist/lang/ast/expressions/expr-minus.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-minus.js +5 -5
- package/dist/lang/ast/expressions/expr-mul-div.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-mul-div.js +1 -1
- package/dist/lang/ast/expressions/expr-not.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-not.js +3 -3
- package/dist/lang/ast/expressions/expr-now.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-now.js +8 -8
- package/dist/lang/ast/expressions/expr-null.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-null.js +4 -4
- package/dist/lang/ast/expressions/expr-number.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-number.js +2 -2
- package/dist/lang/ast/expressions/expr-parens.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-parens.js +3 -3
- package/dist/lang/ast/expressions/expr-regex.d.ts +2 -2
- package/dist/lang/ast/expressions/expr-regex.js +4 -4
- package/dist/lang/ast/expressions/expr-string.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-string.js +8 -8
- package/dist/lang/ast/expressions/expr-sum.d.ts +3 -3
- package/dist/lang/ast/expressions/expr-sum.js +2 -2
- package/dist/lang/ast/expressions/expr-time-extract.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-time-extract.js +30 -30
- package/dist/lang/ast/expressions/expr-time.d.ts +4 -4
- package/dist/lang/ast/expressions/expr-time.js +10 -10
- package/dist/lang/ast/expressions/expr-ungroup.d.ts +6 -6
- package/dist/lang/ast/expressions/expr-ungroup.js +13 -13
- package/dist/lang/ast/expressions/for-range.d.ts +4 -4
- package/dist/lang/ast/expressions/for-range.js +17 -17
- package/dist/lang/ast/expressions/granular-literal.d.ts +4 -4
- package/dist/lang/ast/expressions/granular-literal.js +34 -34
- package/dist/lang/ast/expressions/partial-compare.d.ts +4 -4
- package/dist/lang/ast/expressions/partial-compare.js +4 -4
- package/dist/lang/ast/expressions/pick-when.d.ts +4 -4
- package/dist/lang/ast/expressions/pick-when.js +32 -32
- package/dist/lang/ast/expressions/range.d.ts +3 -3
- package/dist/lang/ast/expressions/range.js +20 -20
- package/dist/lang/ast/expressions/time-frame.d.ts +2 -2
- package/dist/lang/ast/expressions/time-frame.js +3 -3
- package/dist/lang/ast/expressions/top-by.d.ts +4 -4
- package/dist/lang/ast/expressions/top-by.js +5 -5
- package/dist/lang/ast/expressions/unary.d.ts +1 -1
- package/dist/lang/ast/expressions/unary.js +1 -1
- package/dist/lang/ast/expressions/utils.d.ts +2 -2
- package/dist/lang/ast/expressions/utils.js +6 -6
- package/dist/lang/ast/field-space/column-space-field.d.ts +3 -3
- package/dist/lang/ast/field-space/dynamic-space.d.ts +7 -7
- package/dist/lang/ast/field-space/dynamic-space.js +2 -2
- package/dist/lang/ast/field-space/field-definition-value.d.ts +5 -5
- package/dist/lang/ast/field-space/index-field-space.d.ts +3 -3
- package/dist/lang/ast/field-space/index-field-space.js +4 -4
- package/dist/lang/ast/field-space/join-space-field.d.ts +3 -3
- package/dist/lang/ast/field-space/project-field-space.d.ts +2 -2
- package/dist/lang/ast/field-space/project-field-space.js +5 -5
- package/dist/lang/ast/field-space/query-field-struct.d.ts +3 -3
- package/dist/lang/ast/field-space/query-field-struct.js +1 -1
- package/dist/lang/ast/field-space/query-space-field.d.ts +4 -4
- package/dist/lang/ast/field-space/query-space-field.js +1 -1
- package/dist/lang/ast/field-space/query-spaces.d.ts +11 -11
- package/dist/lang/ast/field-space/query-spaces.js +8 -8
- package/dist/lang/ast/field-space/reference-field.d.ts +5 -5
- package/dist/lang/ast/field-space/reference-field.js +1 -1
- package/dist/lang/ast/field-space/refined-space.d.ts +4 -4
- package/dist/lang/ast/field-space/refined-space.js +2 -2
- package/dist/lang/ast/field-space/rename-space-field.d.ts +3 -3
- package/dist/lang/ast/field-space/rename-space-field.js +2 -2
- package/dist/lang/ast/field-space/static-space.d.ts +7 -7
- package/dist/lang/ast/field-space/static-space.js +12 -12
- package/dist/lang/ast/field-space/struct-space-field-base.d.ts +4 -4
- package/dist/lang/ast/field-space/struct-space-field-base.js +1 -1
- package/dist/lang/ast/field-space/wild-space-field.d.ts +4 -4
- package/dist/lang/ast/field-space/wild-space-field.js +1 -1
- package/dist/lang/ast/fragtype-utils.d.ts +1 -1
- package/dist/lang/ast/fragtype-utils.js +15 -15
- package/dist/lang/ast/index.d.ts +90 -90
- package/dist/lang/ast/parameters/constant-parameter.d.ts +3 -3
- package/dist/lang/ast/parameters/constant-parameter.js +10 -10
- package/dist/lang/ast/parameters/has-parameter.d.ts +3 -3
- package/dist/lang/ast/parameters/has-parameter.js +7 -7
- package/dist/lang/ast/query-elements/anonymous-query.d.ts +3 -3
- package/dist/lang/ast/query-elements/anonymous-query.js +2 -2
- package/dist/lang/ast/query-elements/existing-query.d.ts +4 -4
- package/dist/lang/ast/query-elements/existing-query.js +10 -10
- package/dist/lang/ast/query-elements/full-query.d.ts +4 -4
- package/dist/lang/ast/query-elements/full-query.js +10 -10
- package/dist/lang/ast/query-elements/query-head-struct.d.ts +2 -2
- package/dist/lang/ast/query-elements/query-head-struct.js +2 -2
- package/dist/lang/ast/query-items/field-declaration.d.ts +6 -6
- package/dist/lang/ast/query-items/field-declaration.js +14 -14
- package/dist/lang/ast/query-items/field-references.d.ts +6 -6
- package/dist/lang/ast/query-items/field-references.js +9 -9
- package/dist/lang/ast/query-properties/aggregate.d.ts +2 -2
- package/dist/lang/ast/query-properties/aggregate.js +1 -1
- package/dist/lang/ast/query-properties/declare-fields.d.ts +2 -2
- package/dist/lang/ast/query-properties/declare-fields.js +1 -1
- package/dist/lang/ast/query-properties/dimmensions.d.ts +2 -2
- package/dist/lang/ast/query-properties/dimmensions.js +1 -1
- package/dist/lang/ast/query-properties/filters.d.ts +4 -4
- package/dist/lang/ast/query-properties/filters.js +16 -16
- package/dist/lang/ast/query-properties/group-by.d.ts +2 -2
- package/dist/lang/ast/query-properties/group-by.js +1 -1
- package/dist/lang/ast/query-properties/indexing.d.ts +3 -3
- package/dist/lang/ast/query-properties/indexing.js +3 -3
- package/dist/lang/ast/query-properties/joins.d.ts +6 -6
- package/dist/lang/ast/query-properties/joins.js +27 -27
- package/dist/lang/ast/query-properties/limit.d.ts +1 -1
- package/dist/lang/ast/query-properties/limit.js +1 -1
- package/dist/lang/ast/query-properties/measures.d.ts +2 -2
- package/dist/lang/ast/query-properties/measures.js +1 -1
- package/dist/lang/ast/query-properties/nest-reference.d.ts +2 -2
- package/dist/lang/ast/query-properties/nest-reference.js +1 -1
- package/dist/lang/ast/query-properties/nest.d.ts +7 -7
- package/dist/lang/ast/query-properties/nest.js +7 -7
- package/dist/lang/ast/query-properties/nests.d.ts +2 -2
- package/dist/lang/ast/query-properties/nests.js +1 -1
- package/dist/lang/ast/query-properties/ordering.d.ts +3 -3
- package/dist/lang/ast/query-properties/ordering.js +6 -6
- package/dist/lang/ast/query-properties/project-statement.d.ts +2 -2
- package/dist/lang/ast/query-properties/project-statement.js +1 -1
- package/dist/lang/ast/query-properties/qop-desc.d.ts +7 -7
- package/dist/lang/ast/query-properties/qop-desc.js +20 -20
- package/dist/lang/ast/query-properties/sampling.d.ts +2 -2
- package/dist/lang/ast/query-properties/sampling.js +1 -1
- package/dist/lang/ast/query-properties/top.d.ts +4 -4
- package/dist/lang/ast/query-properties/top.js +5 -5
- package/dist/lang/ast/source-properties/field-list-edit.d.ts +4 -4
- package/dist/lang/ast/source-properties/field-list-edit.js +2 -2
- package/dist/lang/ast/source-properties/primary-key.d.ts +2 -2
- package/dist/lang/ast/source-properties/primary-key.js +2 -2
- package/dist/lang/ast/source-properties/renames.d.ts +2 -2
- package/dist/lang/ast/source-properties/renames.js +3 -3
- package/dist/lang/ast/source-properties/turtles.d.ts +2 -2
- package/dist/lang/ast/source-properties/turtles.js +1 -1
- package/dist/lang/ast/sources/named-source.d.ts +4 -4
- package/dist/lang/ast/sources/named-source.js +5 -5
- package/dist/lang/ast/sources/query-source.d.ts +3 -3
- package/dist/lang/ast/sources/query-source.js +3 -3
- package/dist/lang/ast/sources/sql-source.d.ts +2 -2
- package/dist/lang/ast/sources/sql-source.js +2 -2
- package/dist/lang/ast/sources/table-source.d.ts +2 -2
- package/dist/lang/ast/sources/table-source.js +7 -7
- package/dist/lang/ast/space-seed.d.ts +2 -2
- package/dist/lang/ast/space-seed.js +1 -1
- package/dist/lang/ast/sql-elements/sql-statement.d.ts +4 -4
- package/dist/lang/ast/sql-elements/sql-statement.js +9 -9
- package/dist/lang/ast/sql-elements/sql-string.d.ts +3 -3
- package/dist/lang/ast/sql-elements/sql-string.js +6 -6
- package/dist/lang/ast/struct-utils.d.ts +2 -2
- package/dist/lang/ast/struct-utils.js +3 -3
- package/dist/lang/ast/time-utils.d.ts +6 -6
- package/dist/lang/ast/time-utils.js +46 -46
- package/dist/lang/ast/types/document-compile-result.d.ts +2 -2
- package/dist/lang/ast/types/executor.d.ts +3 -3
- package/dist/lang/ast/types/explore-desc.d.ts +2 -2
- package/dist/lang/ast/types/explore-desc.js +1 -1
- package/dist/lang/ast/types/explore-field.d.ts +3 -3
- package/dist/lang/ast/types/expr-result.d.ts +2 -2
- package/dist/lang/ast/types/expr-value.d.ts +2 -2
- package/dist/lang/ast/types/expression-def.d.ts +4 -4
- package/dist/lang/ast/types/expression-def.js +86 -86
- package/dist/lang/ast/types/field-collection-member.d.ts +3 -3
- package/dist/lang/ast/types/field-decl.d.ts +5 -5
- package/dist/lang/ast/types/field-space.d.ts +5 -5
- package/dist/lang/ast/types/field-space.js +1 -1
- package/dist/lang/ast/types/granular-result.d.ts +3 -3
- package/dist/lang/ast/types/granular-result.js +1 -1
- package/dist/lang/ast/types/lookup-result.d.ts +1 -1
- package/dist/lang/ast/types/malloy-element.d.ts +6 -6
- package/dist/lang/ast/types/malloy-element.js +49 -49
- package/dist/lang/ast/types/model-entry.d.ts +1 -1
- package/dist/lang/ast/types/name-space.d.ts +1 -1
- package/dist/lang/ast/types/nested-query.d.ts +2 -2
- package/dist/lang/ast/types/op-desc.d.ts +2 -2
- package/dist/lang/ast/types/query-comp.d.ts +1 -1
- package/dist/lang/ast/types/query-element.d.ts +3 -3
- package/dist/lang/ast/types/query-item.d.ts +4 -4
- package/dist/lang/ast/types/query-property.d.ts +15 -15
- package/dist/lang/ast/types/source-property.d.ts +8 -8
- package/dist/lang/ast/types/space-entry.d.ts +2 -2
- package/dist/lang/ast/types/space-field.d.ts +4 -4
- package/dist/lang/ast/types/space-field.js +4 -4
- package/dist/lang/ast/types/space-param.d.ts +4 -4
- package/dist/lang/ast/types/space-param.js +4 -4
- package/dist/lang/ast/types/time-result.d.ts +2 -2
- package/dist/lang/ast/types/turtle-headed-pipe.d.ts +2 -2
- package/dist/lang/ast/types/turtle-headed-pipe.js +1 -1
- package/dist/lang/ast/types/type-desc.d.ts +3 -3
- package/dist/lang/field-utils.d.ts +1 -1
- package/dist/lang/field-utils.js +4 -4
- package/dist/lang/index.d.ts +10 -10
- package/dist/lang/malloy-to-ast.d.ts +8 -8
- package/dist/lang/malloy-to-ast.js +68 -68
- package/dist/lang/parse-error-handler.d.ts +3 -3
- package/dist/lang/parse-error-handler.js +4 -4
- package/dist/lang/parse-log.d.ts +2 -2
- package/dist/lang/parse-log.js +1 -1
- package/dist/lang/parse-malloy.d.ts +7 -7
- package/dist/lang/parse-malloy.js +81 -81
- package/dist/lang/parse-tree-walkers/document-completion-walker.d.ts +2 -2
- package/dist/lang/parse-tree-walkers/document-completion-walker.js +38 -38
- package/dist/lang/parse-tree-walkers/document-help-context-walker.d.ts +1 -1
- package/dist/lang/parse-tree-walkers/document-help-context-walker.js +14 -14
- package/dist/lang/parse-tree-walkers/document-highlight-walker.d.ts +3 -3
- package/dist/lang/parse-tree-walkers/document-highlight-walker.js +85 -85
- package/dist/lang/parse-tree-walkers/document-symbol-walker.d.ts +4 -4
- package/dist/lang/parse-tree-walkers/document-symbol-walker.js +40 -40
- package/dist/lang/parse-tree-walkers/explore-query-walker.d.ts +3 -3
- package/dist/lang/parse-tree-walkers/explore-query-walker.js +3 -3
- package/dist/lang/parse-tree-walkers/find-external-references.d.ts +4 -4
- package/dist/lang/parse-tree-walkers/find-external-references.js +2 -2
- package/dist/lang/reference-list.d.ts +1 -1
- package/dist/lang/test/document-help-context-walker.spec.js +9 -9
- package/dist/lang/test/document-symbol-walker.spec.js +32 -32
- package/dist/lang/test/field-symbols.spec.js +87 -87
- package/dist/lang/test/parse.spec.d.ts +1 -1
- package/dist/lang/test/parse.spec.js +768 -768
- package/dist/lang/test/test-translator.d.ts +6 -6
- package/dist/lang/test/test-translator.js +159 -159
- package/dist/lang/translate-response.d.ts +7 -7
- package/dist/lang/translate-response.js +1 -1
- package/dist/lang/zone.d.ts +5 -5
- package/dist/lang/zone.js +8 -8
- package/dist/malloy.d.ts +7 -7
- package/dist/malloy.js +192 -192
- package/dist/model/index.d.ts +2 -2
- package/dist/model/malloy_query.d.ts +12 -12
- package/dist/model/malloy_query.js +497 -502
- package/dist/model/malloy_types.d.ts +68 -68
- package/dist/model/malloy_types.js +102 -102
- package/dist/model/sql_block.d.ts +1 -1
- package/dist/model/sql_block.js +4 -4
- package/dist/model/utils.d.ts +1 -1
- package/dist/model/utils.js +10 -10
- package/dist/runtime_types.d.ts +2 -2
- package/package.json +4 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { IndexSegment, PipeSegment } from
|
|
2
|
-
import { FieldReference, WildcardFieldReference } from
|
|
3
|
-
import { QuerySpace } from
|
|
1
|
+
import { IndexSegment, PipeSegment } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldReference, WildcardFieldReference } from '../query-items/field-references';
|
|
3
|
+
import { QuerySpace } from './query-spaces';
|
|
4
4
|
export declare class IndexFieldSpace extends QuerySpace {
|
|
5
5
|
readonly segmentType = "index";
|
|
6
6
|
fieldList: Set<string>;
|
|
@@ -27,7 +27,7 @@ const query_spaces_1 = require("./query-spaces");
|
|
|
27
27
|
class IndexFieldSpace extends query_spaces_1.QuerySpace {
|
|
28
28
|
constructor() {
|
|
29
29
|
super(...arguments);
|
|
30
|
-
this.segmentType =
|
|
30
|
+
this.segmentType = 'index';
|
|
31
31
|
this.fieldList = new Set();
|
|
32
32
|
}
|
|
33
33
|
addReference(ref) {
|
|
@@ -41,15 +41,15 @@ class IndexFieldSpace extends query_spaces_1.QuerySpace {
|
|
|
41
41
|
getPipeSegment(refineIndex) {
|
|
42
42
|
if (refineIndex && refineIndex.fields) {
|
|
43
43
|
for (const exists of refineIndex.fields) {
|
|
44
|
-
if (typeof exists
|
|
44
|
+
if (typeof exists === 'string') {
|
|
45
45
|
this.fieldList.add(exists);
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
this.isComplete();
|
|
50
50
|
return {
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
type: 'index',
|
|
52
|
+
fields: Array.from(this.fieldList.values()),
|
|
53
53
|
};
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FieldSpace } from
|
|
2
|
-
import { Join } from
|
|
3
|
-
import { StructSpaceField } from
|
|
1
|
+
import { FieldSpace } from '../types/field-space';
|
|
2
|
+
import { Join } from '../query-properties/joins';
|
|
3
|
+
import { StructSpaceField } from './static-space';
|
|
4
4
|
export declare class JoinSpaceField extends StructSpaceField {
|
|
5
5
|
readonly intoFS: FieldSpace;
|
|
6
6
|
readonly join: Join;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { QueryFieldDef } from
|
|
2
|
-
import { QuerySpace } from
|
|
1
|
+
import { QueryFieldDef } from '../../../model/malloy_types';
|
|
2
|
+
import { QuerySpace } from './query-spaces';
|
|
3
3
|
export declare class ProjectFieldSpace extends QuerySpace {
|
|
4
4
|
readonly segmentType = "project";
|
|
5
5
|
canContain(qd: QueryFieldDef): boolean;
|
|
@@ -28,19 +28,19 @@ const query_spaces_1 = require("./query-spaces");
|
|
|
28
28
|
class ProjectFieldSpace extends query_spaces_1.QuerySpace {
|
|
29
29
|
constructor() {
|
|
30
30
|
super(...arguments);
|
|
31
|
-
this.segmentType =
|
|
31
|
+
this.segmentType = 'project';
|
|
32
32
|
}
|
|
33
33
|
canContain(qd) {
|
|
34
|
-
if (typeof qd !==
|
|
34
|
+
if (typeof qd !== 'string') {
|
|
35
35
|
if ((0, malloy_types_1.isFilteredAliasedName)(qd)) {
|
|
36
36
|
return true;
|
|
37
37
|
}
|
|
38
|
-
if (qd.type ===
|
|
39
|
-
this.log(
|
|
38
|
+
if (qd.type === 'turtle') {
|
|
39
|
+
this.log('Cannot nest queries in project');
|
|
40
40
|
return false;
|
|
41
41
|
}
|
|
42
42
|
if ((0, malloy_types_1.expressionIsAggregate)(qd.expressionType)) {
|
|
43
|
-
this.log(
|
|
43
|
+
this.log('Cannot add aggregate measures to project');
|
|
44
44
|
return false;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { QueryFieldDef, TurtleDef } from
|
|
2
|
-
import { QueryField } from
|
|
3
|
-
import { FieldSpace } from
|
|
1
|
+
import { QueryFieldDef, TurtleDef } from '../../../model/malloy_types';
|
|
2
|
+
import { QueryField } from './query-space-field';
|
|
3
|
+
import { FieldSpace } from '../types/field-space';
|
|
4
4
|
export declare class QueryFieldStruct extends QueryField {
|
|
5
5
|
protected turtleDef: TurtleDef;
|
|
6
6
|
constructor(fs: FieldSpace, turtleDef: TurtleDef);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { FieldDef, QueryFieldDef } from
|
|
2
|
-
import { FieldSpace } from
|
|
3
|
-
import { SpaceField } from
|
|
4
|
-
import { TypeDesc } from
|
|
1
|
+
import { FieldDef, QueryFieldDef } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldSpace } from '../types/field-space';
|
|
3
|
+
import { SpaceField } from '../types/space-field';
|
|
4
|
+
import { TypeDesc } from '../types/type-desc';
|
|
5
5
|
export declare abstract class QueryField extends SpaceField {
|
|
6
6
|
protected inSpace: FieldSpace;
|
|
7
7
|
constructor(inSpace: FieldSpace);
|
|
@@ -30,7 +30,7 @@ class QueryField extends space_field_1.SpaceField {
|
|
|
30
30
|
this.inSpace = inSpace;
|
|
31
31
|
}
|
|
32
32
|
typeDesc() {
|
|
33
|
-
return {
|
|
33
|
+
return { dataType: 'turtle', expressionType: 'scalar' };
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
exports.QueryField = QueryField;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import * as model from
|
|
2
|
-
import { FieldDeclaration } from
|
|
3
|
-
import { FieldName, FieldSpace } from
|
|
4
|
-
import { MalloyElement } from
|
|
5
|
-
import { Join } from
|
|
6
|
-
import { SourceSpec } from
|
|
7
|
-
import { FieldReference, WildcardFieldReference } from
|
|
8
|
-
import { FieldCollectionMember } from
|
|
9
|
-
import { QueryItem } from
|
|
10
|
-
import { RefinedSpace } from
|
|
1
|
+
import * as model from '../../../model/malloy_types';
|
|
2
|
+
import { FieldDeclaration } from '../query-items/field-declaration';
|
|
3
|
+
import { FieldName, FieldSpace } from '../types/field-space';
|
|
4
|
+
import { MalloyElement } from '../types/malloy-element';
|
|
5
|
+
import { Join } from '../query-properties/joins';
|
|
6
|
+
import { SourceSpec } from '../space-seed';
|
|
7
|
+
import { FieldReference, WildcardFieldReference } from '../query-items/field-references';
|
|
8
|
+
import { FieldCollectionMember } from '../types/field-collection-member';
|
|
9
|
+
import { QueryItem } from '../types/query-item';
|
|
10
|
+
import { RefinedSpace } from './refined-space';
|
|
11
11
|
/**
|
|
12
12
|
* Unlike a source, which is a refinement of a namespace, a query
|
|
13
13
|
* is creating a new unrelated namespace. The query starts with a
|
|
@@ -26,7 +26,7 @@ export declare abstract class QuerySpace extends RefinedSpace {
|
|
|
26
26
|
readonly queryInputSpace: FieldSpace;
|
|
27
27
|
readonly exprSpace: QueryInputSpace;
|
|
28
28
|
astEl?: MalloyElement | undefined;
|
|
29
|
-
abstract readonly segmentType:
|
|
29
|
+
abstract readonly segmentType: 'reduce' | 'project' | 'index';
|
|
30
30
|
constructor(queryInputSpace: FieldSpace);
|
|
31
31
|
log(s: string): void;
|
|
32
32
|
addMembers(members: FieldCollectionMember[]): void;
|
|
@@ -134,7 +134,7 @@ class QuerySpace extends refined_space_1.RefinedSpace {
|
|
|
134
134
|
});
|
|
135
135
|
}
|
|
136
136
|
else {
|
|
137
|
-
const uName = isExclude ?
|
|
137
|
+
const uName = isExclude ? 'exclude()' : 'all()';
|
|
138
138
|
fn.log(`${uName} '${fn.refString}' is missing from query output`);
|
|
139
139
|
}
|
|
140
140
|
}
|
|
@@ -187,12 +187,12 @@ class QuerySpace extends refined_space_1.RefinedSpace {
|
|
|
187
187
|
if (model.isQuerySegment(p)) {
|
|
188
188
|
return p;
|
|
189
189
|
}
|
|
190
|
-
throw new Error(
|
|
190
|
+
throw new Error('TODO NOT POSSIBLE');
|
|
191
191
|
}
|
|
192
192
|
getPipeSegment(refineFrom) {
|
|
193
|
-
if (this.segmentType
|
|
193
|
+
if (this.segmentType === 'index') {
|
|
194
194
|
// TODO ... should make this go away
|
|
195
|
-
throw new Error(
|
|
195
|
+
throw new Error('INDEX FIELD PIPE SEGMENT MIS HANDLED');
|
|
196
196
|
}
|
|
197
197
|
if (refineFrom === null || refineFrom === void 0 ? void 0 : refineFrom.extendSource) {
|
|
198
198
|
for (const xField of refineFrom.extendSource) {
|
|
@@ -200,8 +200,8 @@ class QuerySpace extends refined_space_1.RefinedSpace {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
const segment = {
|
|
203
|
-
|
|
204
|
-
|
|
203
|
+
type: this.segmentType,
|
|
204
|
+
fields: this.queryFieldDefs(),
|
|
205
205
|
};
|
|
206
206
|
segment.fields = (0, field_utils_1.mergeFields)(refineFrom === null || refineFrom === void 0 ? void 0 : refineFrom.fields, segment.fields);
|
|
207
207
|
if (refineFrom === null || refineFrom === void 0 ? void 0 : refineFrom.extendSource) {
|
|
@@ -211,7 +211,7 @@ class QuerySpace extends refined_space_1.RefinedSpace {
|
|
|
211
211
|
const newExtends = [];
|
|
212
212
|
const extendedStruct = this.exprSpace.structDef();
|
|
213
213
|
for (const extendName of this.exprSpace.extendList) {
|
|
214
|
-
const extendEnt = extendedStruct.fields.find(
|
|
214
|
+
const extendEnt = extendedStruct.fields.find(f => (0, field_utils_1.nameOf)(f) === extendName);
|
|
215
215
|
if (extendEnt) {
|
|
216
216
|
newExtends.push(extendEnt);
|
|
217
217
|
}
|
|
@@ -226,7 +226,7 @@ exports.QuerySpace = QuerySpace;
|
|
|
226
226
|
class ReduceFieldSpace extends QuerySpace {
|
|
227
227
|
constructor() {
|
|
228
228
|
super(...arguments);
|
|
229
|
-
this.segmentType =
|
|
229
|
+
this.segmentType = 'reduce';
|
|
230
230
|
}
|
|
231
231
|
}
|
|
232
232
|
exports.ReduceFieldSpace = ReduceFieldSpace;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { QueryFieldDef } from
|
|
2
|
-
import { FieldReference } from
|
|
3
|
-
import { FieldSpace } from
|
|
4
|
-
import { SpaceField } from
|
|
5
|
-
import { TypeDesc } from
|
|
1
|
+
import { QueryFieldDef } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldReference } from '../query-items/field-references';
|
|
3
|
+
import { FieldSpace } from '../types/field-space';
|
|
4
|
+
import { SpaceField } from '../types/space-field';
|
|
5
|
+
import { TypeDesc } from '../types/type-desc';
|
|
6
6
|
export declare class ReferenceField extends SpaceField {
|
|
7
7
|
readonly fieldRef: FieldReference;
|
|
8
8
|
constructor(fieldRef: FieldReference);
|
|
@@ -38,7 +38,7 @@ class ReferenceField extends space_field_1.SpaceField {
|
|
|
38
38
|
return this.fieldRef.refString;
|
|
39
39
|
}
|
|
40
40
|
typeDesc() {
|
|
41
|
-
return {
|
|
41
|
+
return { dataType: 'unknown', expressionType: 'scalar' };
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
exports.ReferenceField = ReferenceField;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { StructDef } from
|
|
2
|
-
import { FieldListEdit } from
|
|
3
|
-
import { DynamicSpace } from
|
|
4
|
-
import { ExploreField } from
|
|
1
|
+
import { StructDef } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldListEdit } from '../source-properties/field-list-edit';
|
|
3
|
+
import { DynamicSpace } from './dynamic-space';
|
|
4
|
+
import { ExploreField } from '../types/explore-field';
|
|
5
5
|
export declare class RefinedSpace extends DynamicSpace {
|
|
6
6
|
/**
|
|
7
7
|
* Factory for FieldSpace when there are accept/except edits
|
|
@@ -45,8 +45,8 @@ class RefinedSpace extends dynamic_space_1.DynamicSpace {
|
|
|
45
45
|
const oldMap = edited.entries();
|
|
46
46
|
edited.dropEntries();
|
|
47
47
|
for (const [symbol, value] of oldMap) {
|
|
48
|
-
const included = !!names.find(
|
|
49
|
-
const accepting = choose.edit ===
|
|
48
|
+
const included = !!names.find(f => f.refString === symbol);
|
|
49
|
+
const accepting = choose.edit === 'accept';
|
|
50
50
|
if (included === accepting) {
|
|
51
51
|
edited.setEntry(symbol, value);
|
|
52
52
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DocumentLocation, FieldDef } from
|
|
2
|
-
import { SpaceField } from
|
|
3
|
-
import { TypeDesc } from
|
|
1
|
+
import { DocumentLocation, FieldDef } from '../../../model/malloy_types';
|
|
2
|
+
import { SpaceField } from '../types/space-field';
|
|
3
|
+
import { TypeDesc } from '../types/type-desc';
|
|
4
4
|
export declare class RenameSpaceField extends SpaceField {
|
|
5
5
|
private readonly otherField;
|
|
6
6
|
private readonly newName;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Dialect } from
|
|
2
|
-
import { FieldDef, StructDef } from
|
|
3
|
-
import { SpaceEntry } from
|
|
4
|
-
import { LookupResult } from
|
|
5
|
-
import { FieldName, FieldSpace } from
|
|
6
|
-
import { SpaceField } from
|
|
7
|
-
import { StructSpaceFieldBase } from
|
|
1
|
+
import { Dialect } from '../../../dialect/dialect';
|
|
2
|
+
import { FieldDef, StructDef } from '../../../model/malloy_types';
|
|
3
|
+
import { SpaceEntry } from '../types/space-entry';
|
|
4
|
+
import { LookupResult } from '../types/lookup-result';
|
|
5
|
+
import { FieldName, FieldSpace } from '../types/field-space';
|
|
6
|
+
import { SpaceField } from '../types/space-field';
|
|
7
|
+
import { StructSpaceFieldBase } from './struct-space-field-base';
|
|
8
8
|
export declare class StaticSpace implements FieldSpace {
|
|
9
9
|
readonly type = "fieldSpace";
|
|
10
10
|
private memoMap?;
|
|
@@ -32,7 +32,7 @@ const column_space_field_1 = require("./column-space-field");
|
|
|
32
32
|
const query_field_struct_1 = require("./query-field-struct");
|
|
33
33
|
class StaticSpace {
|
|
34
34
|
constructor(sourceStructDef) {
|
|
35
|
-
this.type =
|
|
35
|
+
this.type = 'fieldSpace';
|
|
36
36
|
this.fromStruct = sourceStructDef;
|
|
37
37
|
}
|
|
38
38
|
whenComplete(step) {
|
|
@@ -47,7 +47,7 @@ class StaticSpace {
|
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
defToSpaceField(from) {
|
|
50
|
-
if (from.type ===
|
|
50
|
+
if (from.type === 'struct') {
|
|
51
51
|
return new StructSpaceField(from);
|
|
52
52
|
}
|
|
53
53
|
else if ((0, malloy_types_1.isTurtleDef)(from)) {
|
|
@@ -93,14 +93,14 @@ class StaticSpace {
|
|
|
93
93
|
return this.fromStruct;
|
|
94
94
|
}
|
|
95
95
|
emptyStructDef() {
|
|
96
|
-
return { ...this.fromStruct,
|
|
96
|
+
return { ...this.fromStruct, fields: [] };
|
|
97
97
|
}
|
|
98
98
|
lookup(path) {
|
|
99
99
|
const head = path[0];
|
|
100
100
|
const rest = path.slice(1);
|
|
101
101
|
const found = this.entry(head.refString);
|
|
102
102
|
if (!found) {
|
|
103
|
-
return {
|
|
103
|
+
return { error: `'${head}' is not defined`, found };
|
|
104
104
|
}
|
|
105
105
|
if (found instanceof space_field_1.SpaceField) {
|
|
106
106
|
/*
|
|
@@ -122,12 +122,12 @@ class StaticSpace {
|
|
|
122
122
|
const definition = found.fieldDef();
|
|
123
123
|
if (definition) {
|
|
124
124
|
head.addReference({
|
|
125
|
-
|
|
126
|
-
?
|
|
127
|
-
:
|
|
125
|
+
type: found instanceof struct_space_field_base_1.StructSpaceFieldBase
|
|
126
|
+
? 'joinReference'
|
|
127
|
+
: 'fieldReference',
|
|
128
128
|
definition,
|
|
129
|
-
|
|
130
|
-
|
|
129
|
+
location: head.location,
|
|
130
|
+
text: head.refString,
|
|
131
131
|
});
|
|
132
132
|
}
|
|
133
133
|
}
|
|
@@ -136,11 +136,11 @@ class StaticSpace {
|
|
|
136
136
|
return found.fieldSpace.lookup(rest);
|
|
137
137
|
}
|
|
138
138
|
return {
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
error: `'${head}' cannot contain a '${rest[0]}'`,
|
|
140
|
+
found: undefined,
|
|
141
141
|
};
|
|
142
142
|
}
|
|
143
|
-
return { found,
|
|
143
|
+
return { found, error: undefined };
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
exports.StaticSpace = StaticSpace;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { FieldDef, StructDef } from
|
|
2
|
-
import { FieldSpace } from
|
|
3
|
-
import { SpaceField } from
|
|
4
|
-
import { TypeDesc } from
|
|
1
|
+
import { FieldDef, StructDef } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldSpace } from '../types/field-space';
|
|
3
|
+
import { SpaceField } from '../types/space-field';
|
|
4
|
+
import { TypeDesc } from '../types/type-desc';
|
|
5
5
|
export declare abstract class StructSpaceFieldBase extends SpaceField {
|
|
6
6
|
protected sourceDef: StructDef;
|
|
7
7
|
constructor(sourceDef: StructDef);
|
|
@@ -33,7 +33,7 @@ class StructSpaceFieldBase extends space_field_1.SpaceField {
|
|
|
33
33
|
return this.sourceDef;
|
|
34
34
|
}
|
|
35
35
|
typeDesc() {
|
|
36
|
-
return {
|
|
36
|
+
return { dataType: 'struct', expressionType: 'scalar' };
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
exports.StructSpaceFieldBase = StructSpaceFieldBase;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { QueryFieldDef } from
|
|
2
|
-
import { FieldSpace } from
|
|
3
|
-
import { SpaceField } from
|
|
4
|
-
import { TypeDesc } from
|
|
1
|
+
import { QueryFieldDef } from '../../../model/malloy_types';
|
|
2
|
+
import { FieldSpace } from '../types/field-space';
|
|
3
|
+
import { SpaceField } from '../types/space-field';
|
|
4
|
+
import { TypeDesc } from '../types/type-desc';
|
|
5
5
|
export declare class WildSpaceField extends SpaceField {
|
|
6
6
|
readonly wildText: string;
|
|
7
7
|
constructor(wildText: string);
|
|
@@ -30,7 +30,7 @@ class WildSpaceField extends space_field_1.SpaceField {
|
|
|
30
30
|
this.wildText = wildText;
|
|
31
31
|
}
|
|
32
32
|
typeDesc() {
|
|
33
|
-
throw new Error(
|
|
33
|
+
throw new Error('should never ask a wild field for its type');
|
|
34
34
|
}
|
|
35
35
|
getQueryFieldDef(_fs) {
|
|
36
36
|
return this.wildText;
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
*/
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
25
|
exports.FT = void 0;
|
|
26
|
-
function mkFragType(dataType, expressionType =
|
|
26
|
+
function mkFragType(dataType, expressionType = 'scalar') {
|
|
27
27
|
return { dataType, expressionType };
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
@@ -37,7 +37,7 @@ class FT {
|
|
|
37
37
|
*/
|
|
38
38
|
static in(check, from) {
|
|
39
39
|
if (check) {
|
|
40
|
-
const found = from.find(
|
|
40
|
+
const found = from.find(okType => FT.eq(okType, check));
|
|
41
41
|
return found !== undefined;
|
|
42
42
|
}
|
|
43
43
|
return false;
|
|
@@ -60,7 +60,7 @@ class FT {
|
|
|
60
60
|
*/
|
|
61
61
|
static typeEq(left, right, nullOk = false) {
|
|
62
62
|
const maybeEq = left.dataType === right.dataType;
|
|
63
|
-
const nullEq = nullOk && (left.dataType ===
|
|
63
|
+
const nullEq = nullOk && (left.dataType === 'null' || right.dataType === 'null');
|
|
64
64
|
return maybeEq || nullEq;
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
@@ -70,32 +70,32 @@ class FT {
|
|
|
70
70
|
* @param types List of type or objects with types
|
|
71
71
|
*/
|
|
72
72
|
static inspect(...types) {
|
|
73
|
-
const strings = types.map(
|
|
73
|
+
const strings = types.map(type => {
|
|
74
74
|
if (type) {
|
|
75
75
|
let inspected = type.dataType;
|
|
76
|
-
if (type.expressionType
|
|
76
|
+
if (type.expressionType !== 'scalar') {
|
|
77
77
|
inspected = `${type.expressionType} ${inspected}`;
|
|
78
78
|
}
|
|
79
79
|
return inspected;
|
|
80
80
|
}
|
|
81
|
-
return
|
|
81
|
+
return 'undefined';
|
|
82
82
|
});
|
|
83
|
-
return strings.join(
|
|
83
|
+
return strings.join(',');
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
exports.FT = FT;
|
|
87
|
-
FT.nullT = mkFragType(
|
|
88
|
-
FT.numberT = mkFragType(
|
|
89
|
-
FT.stringT = mkFragType(
|
|
90
|
-
FT.dateT = mkFragType(
|
|
91
|
-
FT.timestampT = mkFragType(
|
|
92
|
-
FT.boolT = mkFragType(
|
|
87
|
+
FT.nullT = mkFragType('null');
|
|
88
|
+
FT.numberT = mkFragType('number');
|
|
89
|
+
FT.stringT = mkFragType('string');
|
|
90
|
+
FT.dateT = mkFragType('date');
|
|
91
|
+
FT.timestampT = mkFragType('timestamp');
|
|
92
|
+
FT.boolT = mkFragType('boolean');
|
|
93
93
|
FT.anyAtomicT = [
|
|
94
94
|
FT.numberT,
|
|
95
95
|
FT.stringT,
|
|
96
96
|
FT.dateT,
|
|
97
97
|
FT.timestampT,
|
|
98
|
-
FT.boolT
|
|
98
|
+
FT.boolT,
|
|
99
99
|
];
|
|
100
|
-
FT.aggregateBoolT = mkFragType(
|
|
100
|
+
FT.aggregateBoolT = mkFragType('boolean', 'aggregate');
|
|
101
101
|
//# sourceMappingURL=fragtype-utils.js.map
|