@loaders.gl/schema 4.2.0-alpha.4 → 4.2.0-alpha.5
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/dist.dev.js +190 -161
- package/dist/dist.min.js +9 -0
- package/dist/index.cjs +64 -73
- package/dist/index.cjs.map +7 -0
- package/dist/index.d.ts +30 -30
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -1
- package/dist/lib/mesh/convert-mesh.d.ts +2 -2
- package/dist/lib/mesh/convert-mesh.d.ts.map +1 -1
- package/dist/lib/mesh/convert-mesh.js +33 -18
- package/dist/lib/mesh/deduce-mesh-schema.d.ts +2 -2
- package/dist/lib/mesh/deduce-mesh-schema.d.ts.map +1 -1
- package/dist/lib/mesh/deduce-mesh-schema.js +54 -40
- package/dist/lib/mesh/mesh-to-arrow-table.js +46 -1
- package/dist/lib/mesh/mesh-utils.d.ts +2 -2
- package/dist/lib/mesh/mesh-utils.d.ts.map +1 -1
- package/dist/lib/mesh/mesh-utils.js +41 -28
- package/dist/lib/table/arrow-api/arrow-like-field.d.ts +1 -1
- package/dist/lib/table/arrow-api/arrow-like-field.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-field.js +30 -25
- package/dist/lib/table/arrow-api/arrow-like-schema.d.ts +2 -2
- package/dist/lib/table/arrow-api/arrow-like-schema.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-schema.js +69 -56
- package/dist/lib/table/arrow-api/arrow-like-table.d.ts +2 -2
- package/dist/lib/table/arrow-api/arrow-like-table.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-table.js +53 -45
- package/dist/lib/table/arrow-api/arrow-like-type.d.ts +3 -3
- package/dist/lib/table/arrow-api/arrow-like-type.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/arrow-like-type.js +357 -321
- package/dist/lib/table/arrow-api/enum.js +97 -48
- package/dist/lib/table/arrow-api/get-type-info.d.ts +1 -1
- package/dist/lib/table/arrow-api/get-type-info.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/get-type-info.js +20 -14
- package/dist/lib/table/arrow-api/index.d.ts +4 -4
- package/dist/lib/table/arrow-api/index.d.ts.map +1 -1
- package/dist/lib/table/arrow-api/index.js +3 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.d.ts +3 -3
- package/dist/lib/table/batches/base-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.js +53 -52
- package/dist/lib/table/batches/columnar-table-batch-aggregator.d.ts +3 -3
- package/dist/lib/table/batches/columnar-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/columnar-table-batch-aggregator.js +81 -67
- package/dist/lib/table/batches/row-table-batch-aggregator.d.ts +3 -3
- package/dist/lib/table/batches/row-table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/row-table-batch-aggregator.js +74 -67
- package/dist/lib/table/batches/table-batch-aggregator.d.ts +2 -2
- package/dist/lib/table/batches/table-batch-aggregator.d.ts.map +1 -1
- package/dist/lib/table/batches/table-batch-aggregator.js +3 -1
- package/dist/lib/table/batches/table-batch-builder.d.ts +3 -3
- package/dist/lib/table/batches/table-batch-builder.d.ts.map +1 -1
- package/dist/lib/table/batches/table-batch-builder.js +128 -116
- package/dist/lib/table/simple-table/convert-table.d.ts +1 -1
- package/dist/lib/table/simple-table/convert-table.d.ts.map +1 -1
- package/dist/lib/table/simple-table/convert-table.js +97 -62
- package/dist/lib/table/simple-table/data-type.d.ts +2 -2
- package/dist/lib/table/simple-table/data-type.d.ts.map +1 -1
- package/dist/lib/table/simple-table/data-type.js +79 -76
- package/dist/lib/table/simple-table/make-table-from-batches.js +70 -67
- package/dist/lib/table/simple-table/make-table.d.ts +1 -1
- package/dist/lib/table/simple-table/make-table.d.ts.map +1 -1
- package/dist/lib/table/simple-table/make-table.js +85 -41
- package/dist/lib/table/simple-table/row-utils.js +38 -31
- package/dist/lib/table/simple-table/table-accessors.d.ts +1 -1
- package/dist/lib/table/simple-table/table-accessors.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-accessors.js +314 -270
- package/dist/lib/table/simple-table/table-column.d.ts +1 -1
- package/dist/lib/table/simple-table/table-column.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-column.js +36 -3
- package/dist/lib/table/simple-table/table-schema.d.ts +2 -2
- package/dist/lib/table/simple-table/table-schema.d.ts.map +1 -1
- package/dist/lib/table/simple-table/table-schema.js +69 -56
- package/dist/lib/utils/assert.js +6 -4
- package/dist/lib/utils/async-queue.js +76 -82
- package/dist/types/batch.d.ts +1 -1
- package/dist/types/batch.d.ts.map +1 -1
- package/dist/types/batch.js +3 -1
- package/dist/types/binary-geometries.d.ts +1 -1
- package/dist/types/binary-geometries.d.ts.map +1 -1
- package/dist/types/binary-geometries.js +3 -1
- package/dist/types/category-gis.d.ts +2 -2
- package/dist/types/category-gis.d.ts.map +1 -1
- package/dist/types/category-gis.js +3 -1
- package/dist/types/category-image.js +3 -1
- package/dist/types/category-mesh.d.ts +3 -3
- package/dist/types/category-mesh.d.ts.map +1 -1
- package/dist/types/category-mesh.js +3 -1
- package/dist/types/category-table.d.ts +3 -3
- package/dist/types/category-table.d.ts.map +1 -1
- package/dist/types/category-table.js +3 -1
- package/dist/types/category-texture.d.ts +1 -1
- package/dist/types/category-texture.d.ts.map +1 -1
- package/dist/types/category-texture.js +3 -1
- package/dist/types/flat-geometries.js +3 -1
- package/dist/types/schema.js +3 -1
- package/dist/types/types.js +3 -1
- package/package.json +8 -4
- package/src/index.ts +1 -1
- package/dist/index.js.map +0 -1
- package/dist/lib/mesh/convert-mesh.js.map +0 -1
- package/dist/lib/mesh/deduce-mesh-schema.js.map +0 -1
- package/dist/lib/mesh/mesh-to-arrow-table.js.map +0 -1
- package/dist/lib/mesh/mesh-utils.js.map +0 -1
- package/dist/lib/table/arrow-api/arrow-like-field.js.map +0 -1
- package/dist/lib/table/arrow-api/arrow-like-schema.js.map +0 -1
- package/dist/lib/table/arrow-api/arrow-like-table.js.map +0 -1
- package/dist/lib/table/arrow-api/arrow-like-type.js.map +0 -1
- package/dist/lib/table/arrow-api/enum.js.map +0 -1
- package/dist/lib/table/arrow-api/get-type-info.js.map +0 -1
- package/dist/lib/table/arrow-api/index.js.map +0 -1
- package/dist/lib/table/batches/base-table-batch-aggregator.js.map +0 -1
- package/dist/lib/table/batches/columnar-table-batch-aggregator.js.map +0 -1
- package/dist/lib/table/batches/row-table-batch-aggregator.js.map +0 -1
- package/dist/lib/table/batches/table-batch-aggregator.js.map +0 -1
- package/dist/lib/table/batches/table-batch-builder.js.map +0 -1
- package/dist/lib/table/simple-table/convert-table.js.map +0 -1
- package/dist/lib/table/simple-table/data-type.js.map +0 -1
- package/dist/lib/table/simple-table/make-table-from-batches.js.map +0 -1
- package/dist/lib/table/simple-table/make-table.js.map +0 -1
- package/dist/lib/table/simple-table/row-utils.js.map +0 -1
- package/dist/lib/table/simple-table/table-accessors.js.map +0 -1
- package/dist/lib/table/simple-table/table-column.js.map +0 -1
- package/dist/lib/table/simple-table/table-schema.js.map +0 -1
- package/dist/lib/utils/assert.js.map +0 -1
- package/dist/lib/utils/async-queue.js.map +0 -1
- package/dist/types/batch.js.map +0 -1
- package/dist/types/binary-geometries.js.map +0 -1
- package/dist/types/category-gis.js.map +0 -1
- package/dist/types/category-image.js.map +0 -1
- package/dist/types/category-mesh.js.map +0 -1
- package/dist/types/category-table.js.map +0 -1
- package/dist/types/category-texture.js.map +0 -1
- package/dist/types/flat-geometries.js.map +0 -1
- package/dist/types/schema.js.map +0 -1
- package/dist/types/types.js.map +0 -1
|
@@ -1,392 +1,428 @@
|
|
|
1
|
-
|
|
1
|
+
// loaders.gl
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
// Copyright (c) vis.gl contributors
|
|
4
|
+
// This code is adapted from ArrowJS https://github.com/apache/arrow
|
|
5
|
+
// under Apache license http://www.apache.org/licenses/LICENSE-2.0
|
|
2
6
|
import { Type } from "./enum.js";
|
|
3
7
|
export { Type } from "./enum.js";
|
|
8
|
+
/** ArrowLike DataType class */
|
|
4
9
|
export class DataType {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
return
|
|
64
|
-
|
|
65
|
-
}
|
|
10
|
+
static isNull(x) {
|
|
11
|
+
return x && x.typeId === Type.Null;
|
|
12
|
+
}
|
|
13
|
+
static isInt(x) {
|
|
14
|
+
return x && x.typeId === Type.Int;
|
|
15
|
+
}
|
|
16
|
+
static isFloat(x) {
|
|
17
|
+
return x && x.typeId === Type.Float;
|
|
18
|
+
}
|
|
19
|
+
static isBinary(x) {
|
|
20
|
+
return x && x.typeId === Type.Binary;
|
|
21
|
+
}
|
|
22
|
+
static isUtf8(x) {
|
|
23
|
+
return x && x.typeId === Type.Utf8;
|
|
24
|
+
}
|
|
25
|
+
static isBool(x) {
|
|
26
|
+
return x && x.typeId === Type.Bool;
|
|
27
|
+
}
|
|
28
|
+
static isDecimal(x) {
|
|
29
|
+
return x && x.typeId === Type.Decimal;
|
|
30
|
+
}
|
|
31
|
+
static isDate(x) {
|
|
32
|
+
return x && x.typeId === Type.Date;
|
|
33
|
+
}
|
|
34
|
+
static isTime(x) {
|
|
35
|
+
return x && x.typeId === Type.Time;
|
|
36
|
+
}
|
|
37
|
+
static isTimestamp(x) {
|
|
38
|
+
return x && x.typeId === Type.Timestamp;
|
|
39
|
+
}
|
|
40
|
+
static isInterval(x) {
|
|
41
|
+
return x && x.typeId === Type.Interval;
|
|
42
|
+
}
|
|
43
|
+
static isList(x) {
|
|
44
|
+
return x && x.typeId === Type.List;
|
|
45
|
+
}
|
|
46
|
+
static isStruct(x) {
|
|
47
|
+
return x && x.typeId === Type.Struct;
|
|
48
|
+
}
|
|
49
|
+
static isUnion(x) {
|
|
50
|
+
return x && x.typeId === Type.Union;
|
|
51
|
+
}
|
|
52
|
+
static isFixedSizeBinary(x) {
|
|
53
|
+
return x && x.typeId === Type.FixedSizeBinary;
|
|
54
|
+
}
|
|
55
|
+
static isFixedSizeList(x) {
|
|
56
|
+
return x && x.typeId === Type.FixedSizeList;
|
|
57
|
+
}
|
|
58
|
+
static isMap(x) {
|
|
59
|
+
return x && x.typeId === Type.Map;
|
|
60
|
+
}
|
|
61
|
+
static isDictionary(x) {
|
|
62
|
+
return x && x.typeId === Type.Dictionary;
|
|
63
|
+
}
|
|
64
|
+
get typeId() {
|
|
65
|
+
return Type.NONE;
|
|
66
|
+
}
|
|
67
|
+
// get ArrayType(): AnyArrayType {
|
|
68
|
+
// return Int8Array;
|
|
69
|
+
// }
|
|
70
|
+
// get ArrayType() { return Array; }
|
|
71
|
+
compareTo(other) {
|
|
72
|
+
// TODO
|
|
73
|
+
return this === other; // comparer.visit(this, other);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// NULL
|
|
66
77
|
export class Null extends DataType {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}
|
|
78
|
+
get typeId() {
|
|
79
|
+
return Type.Null;
|
|
80
|
+
}
|
|
81
|
+
get [Symbol.toStringTag]() {
|
|
82
|
+
return 'Null';
|
|
83
|
+
}
|
|
84
|
+
toString() {
|
|
85
|
+
return 'Null';
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// BOOLEANS
|
|
77
89
|
export class Bool extends DataType {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
get typeId() {
|
|
91
|
+
return Type.Bool;
|
|
92
|
+
}
|
|
93
|
+
// get ArrayType() {
|
|
94
|
+
// return Uint8Array;
|
|
95
|
+
// }
|
|
96
|
+
get [Symbol.toStringTag]() {
|
|
97
|
+
return 'Bool';
|
|
98
|
+
}
|
|
99
|
+
toString() {
|
|
100
|
+
return 'Bool';
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// INTS
|
|
89
104
|
export class Int extends DataType {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
constructor(isSigned, bitWidth) {
|
|
106
|
+
super();
|
|
107
|
+
this.isSigned = isSigned;
|
|
108
|
+
this.bitWidth = bitWidth;
|
|
109
|
+
}
|
|
110
|
+
get typeId() {
|
|
111
|
+
return Type.Int;
|
|
112
|
+
}
|
|
113
|
+
// get ArrayType() {
|
|
114
|
+
// switch (this.bitWidth) {
|
|
115
|
+
// case 8:
|
|
116
|
+
// return this.isSigned ? Int8Array : Uint8Array;
|
|
117
|
+
// case 16:
|
|
118
|
+
// return this.isSigned ? Int16Array : Uint16Array;
|
|
119
|
+
// case 32:
|
|
120
|
+
// return this.isSigned ? Int32Array : Uint32Array;
|
|
121
|
+
// case 64:
|
|
122
|
+
// return this.isSigned ? Int32Array : Uint32Array;
|
|
123
|
+
// default:
|
|
124
|
+
// throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`);
|
|
125
|
+
// }
|
|
126
|
+
// }
|
|
127
|
+
get [Symbol.toStringTag]() {
|
|
128
|
+
return 'Int';
|
|
129
|
+
}
|
|
130
|
+
toString() {
|
|
131
|
+
return `${this.isSigned ? 'I' : 'Ui'}nt${this.bitWidth}`;
|
|
132
|
+
}
|
|
106
133
|
}
|
|
107
134
|
export class Int8 extends Int {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
135
|
+
constructor() {
|
|
136
|
+
super(true, 8);
|
|
137
|
+
}
|
|
111
138
|
}
|
|
112
139
|
export class Int16 extends Int {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
140
|
+
constructor() {
|
|
141
|
+
super(true, 16);
|
|
142
|
+
}
|
|
116
143
|
}
|
|
117
144
|
export class Int32 extends Int {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
145
|
+
constructor() {
|
|
146
|
+
super(true, 32);
|
|
147
|
+
}
|
|
121
148
|
}
|
|
122
149
|
export class Int64 extends Int {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
150
|
+
constructor() {
|
|
151
|
+
super(true, 64);
|
|
152
|
+
}
|
|
126
153
|
}
|
|
127
154
|
export class Uint8 extends Int {
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
155
|
+
constructor() {
|
|
156
|
+
super(false, 8);
|
|
157
|
+
}
|
|
131
158
|
}
|
|
132
159
|
export class Uint16 extends Int {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
160
|
+
constructor() {
|
|
161
|
+
super(false, 16);
|
|
162
|
+
}
|
|
136
163
|
}
|
|
137
164
|
export class Uint32 extends Int {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
165
|
+
constructor() {
|
|
166
|
+
super(false, 32);
|
|
167
|
+
}
|
|
141
168
|
}
|
|
142
169
|
export class Uint64 extends Int {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
170
|
+
constructor() {
|
|
171
|
+
super(false, 64);
|
|
172
|
+
}
|
|
146
173
|
}
|
|
174
|
+
// FLOATS
|
|
147
175
|
const Precision = {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
176
|
+
HALF: 16,
|
|
177
|
+
SINGLE: 32,
|
|
178
|
+
DOUBLE: 64
|
|
151
179
|
};
|
|
152
|
-
_Symbol$toStringTag2 = Symbol.toStringTag;
|
|
153
180
|
export class Float extends DataType {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
return
|
|
167
|
-
|
|
181
|
+
constructor(precision) {
|
|
182
|
+
super();
|
|
183
|
+
this.precision = precision;
|
|
184
|
+
}
|
|
185
|
+
get typeId() {
|
|
186
|
+
return Type.Float;
|
|
187
|
+
}
|
|
188
|
+
// get ArrayType() {
|
|
189
|
+
// switch (this.precision) {
|
|
190
|
+
// case Precision.HALF:
|
|
191
|
+
// return Uint16Array;
|
|
192
|
+
// case Precision.SINGLE:
|
|
193
|
+
// return Float32Array;
|
|
194
|
+
// case Precision.DOUBLE:
|
|
195
|
+
// return Float64Array;
|
|
196
|
+
// default:
|
|
197
|
+
// throw new Error(`Unrecognized ${this[Symbol.toStringTag]} type`);
|
|
198
|
+
// }
|
|
199
|
+
// }
|
|
200
|
+
get [Symbol.toStringTag]() {
|
|
201
|
+
return 'Float';
|
|
202
|
+
}
|
|
203
|
+
toString() {
|
|
204
|
+
return `Float${this.precision}`;
|
|
205
|
+
}
|
|
168
206
|
}
|
|
169
207
|
export class Float16 extends Float {
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
208
|
+
constructor() {
|
|
209
|
+
super(Precision.HALF);
|
|
210
|
+
}
|
|
173
211
|
}
|
|
174
212
|
export class Float32 extends Float {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
213
|
+
constructor() {
|
|
214
|
+
super(Precision.SINGLE);
|
|
215
|
+
}
|
|
178
216
|
}
|
|
179
217
|
export class Float64 extends Float {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
218
|
+
constructor() {
|
|
219
|
+
super(Precision.DOUBLE);
|
|
220
|
+
}
|
|
183
221
|
}
|
|
184
222
|
export class Binary extends DataType {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
223
|
+
constructor() {
|
|
224
|
+
super();
|
|
225
|
+
}
|
|
226
|
+
get typeId() {
|
|
227
|
+
return Type.Binary;
|
|
228
|
+
}
|
|
229
|
+
toString() {
|
|
230
|
+
return 'Binary';
|
|
231
|
+
}
|
|
232
|
+
get [Symbol.toStringTag]() {
|
|
233
|
+
return 'Binary';
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
// STRINGS
|
|
198
237
|
export class Utf8 extends DataType {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
return
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
238
|
+
get typeId() {
|
|
239
|
+
return Type.Utf8;
|
|
240
|
+
}
|
|
241
|
+
// get ArrayType() {
|
|
242
|
+
// return Uint8Array;
|
|
243
|
+
// }
|
|
244
|
+
get [Symbol.toStringTag]() {
|
|
245
|
+
return 'Utf8';
|
|
246
|
+
}
|
|
247
|
+
toString() {
|
|
248
|
+
return 'Utf8';
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
// DATES, TIMES AND INTERVALS
|
|
209
252
|
const DateUnit = {
|
|
210
|
-
|
|
211
|
-
|
|
253
|
+
DAY: 0,
|
|
254
|
+
MILLISECOND: 1
|
|
212
255
|
};
|
|
213
|
-
_Symbol$toStringTag3 = Symbol.toStringTag;
|
|
214
256
|
export class Date extends DataType {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
257
|
+
constructor(unit) {
|
|
258
|
+
super();
|
|
259
|
+
this.unit = unit;
|
|
260
|
+
}
|
|
261
|
+
get typeId() {
|
|
262
|
+
return Type.Date;
|
|
263
|
+
}
|
|
264
|
+
// get ArrayType() {
|
|
265
|
+
// return Int32Array;
|
|
266
|
+
// }
|
|
267
|
+
get [Symbol.toStringTag]() {
|
|
268
|
+
return 'Date';
|
|
269
|
+
}
|
|
270
|
+
toString() {
|
|
271
|
+
return `Date${(this.unit + 1) * 32}<${DateUnit[this.unit]}>`;
|
|
272
|
+
}
|
|
229
273
|
}
|
|
230
274
|
export class DateDay extends Date {
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
275
|
+
constructor() {
|
|
276
|
+
super(DateUnit.DAY);
|
|
277
|
+
}
|
|
234
278
|
}
|
|
235
279
|
export class DateMillisecond extends Date {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
280
|
+
constructor() {
|
|
281
|
+
super(DateUnit.MILLISECOND);
|
|
282
|
+
}
|
|
239
283
|
}
|
|
240
284
|
const TimeUnit = {
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
285
|
+
SECOND: 1,
|
|
286
|
+
MILLISECOND: 1e3,
|
|
287
|
+
MICROSECOND: 1e6,
|
|
288
|
+
NANOSECOND: 1e9
|
|
245
289
|
};
|
|
246
|
-
_Symbol$toStringTag4 = Symbol.toStringTag;
|
|
247
290
|
export class Time extends DataType {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
return 'Time';
|
|
263
|
-
}
|
|
291
|
+
constructor(unit, bitWidth) {
|
|
292
|
+
super();
|
|
293
|
+
this.unit = unit;
|
|
294
|
+
this.bitWidth = bitWidth;
|
|
295
|
+
}
|
|
296
|
+
get typeId() {
|
|
297
|
+
return Type.Time;
|
|
298
|
+
}
|
|
299
|
+
toString() {
|
|
300
|
+
return `Time${this.bitWidth}<${TimeUnit[this.unit]}>`;
|
|
301
|
+
}
|
|
302
|
+
get [Symbol.toStringTag]() {
|
|
303
|
+
return 'Time';
|
|
304
|
+
}
|
|
264
305
|
}
|
|
265
306
|
export class TimeSecond extends Time {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
307
|
+
constructor() {
|
|
308
|
+
super(TimeUnit.SECOND, 32);
|
|
309
|
+
}
|
|
269
310
|
}
|
|
270
311
|
export class TimeMillisecond extends Time {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
312
|
+
constructor() {
|
|
313
|
+
super(TimeUnit.MILLISECOND, 32);
|
|
314
|
+
}
|
|
274
315
|
}
|
|
275
|
-
|
|
316
|
+
// export class TimeMicrosecond extends Time { constructor() { super(TimeUnit.MICROSECOND, 64); } }
|
|
317
|
+
// export class TimeNanosecond extends Time { constructor() { super(TimeUnit.NANOSECOND, 64); } }
|
|
276
318
|
export class Timestamp extends DataType {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
return
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
319
|
+
constructor(unit, timezone = null) {
|
|
320
|
+
super();
|
|
321
|
+
this.unit = unit;
|
|
322
|
+
this.timezone = timezone;
|
|
323
|
+
}
|
|
324
|
+
get typeId() {
|
|
325
|
+
return Type.Timestamp;
|
|
326
|
+
}
|
|
327
|
+
// get ArrayType() {
|
|
328
|
+
// return Int32Array;
|
|
329
|
+
// }
|
|
330
|
+
get [Symbol.toStringTag]() {
|
|
331
|
+
return 'Timestamp';
|
|
332
|
+
}
|
|
333
|
+
toString() {
|
|
334
|
+
return `Timestamp<${TimeUnit[this.unit]}${this.timezone ? `, ${this.timezone}` : ''}>`;
|
|
335
|
+
}
|
|
294
336
|
}
|
|
295
337
|
export class TimestampSecond extends Timestamp {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
}
|
|
338
|
+
constructor(timezone = null) {
|
|
339
|
+
super(TimeUnit.SECOND, timezone);
|
|
340
|
+
}
|
|
300
341
|
}
|
|
301
342
|
export class TimestampMillisecond extends Timestamp {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
}
|
|
343
|
+
constructor(timezone = null) {
|
|
344
|
+
super(TimeUnit.MILLISECOND, timezone);
|
|
345
|
+
}
|
|
306
346
|
}
|
|
307
347
|
export class TimestampMicrosecond extends Timestamp {
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
}
|
|
348
|
+
constructor(timezone = null) {
|
|
349
|
+
super(TimeUnit.MICROSECOND, timezone);
|
|
350
|
+
}
|
|
312
351
|
}
|
|
313
352
|
export class TimestampNanosecond extends Timestamp {
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
}
|
|
353
|
+
constructor(timezone = null) {
|
|
354
|
+
super(TimeUnit.NANOSECOND, timezone);
|
|
355
|
+
}
|
|
318
356
|
}
|
|
319
357
|
const IntervalUnit = {
|
|
320
|
-
|
|
321
|
-
|
|
358
|
+
DAY_TIME: 0,
|
|
359
|
+
YEAR_MONTH: 1
|
|
322
360
|
};
|
|
323
|
-
_Symbol$toStringTag6 = Symbol.toStringTag;
|
|
324
361
|
export class Interval extends DataType {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
362
|
+
constructor(unit) {
|
|
363
|
+
super();
|
|
364
|
+
this.unit = unit;
|
|
365
|
+
}
|
|
366
|
+
get typeId() {
|
|
367
|
+
return Type.Interval;
|
|
368
|
+
}
|
|
369
|
+
// get ArrayType() {
|
|
370
|
+
// return Int32Array;
|
|
371
|
+
// }
|
|
372
|
+
get [Symbol.toStringTag]() {
|
|
373
|
+
return 'Interval';
|
|
374
|
+
}
|
|
375
|
+
toString() {
|
|
376
|
+
return `Interval<${IntervalUnit[this.unit]}>`;
|
|
377
|
+
}
|
|
339
378
|
}
|
|
340
379
|
export class IntervalDayTime extends Interval {
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
380
|
+
constructor() {
|
|
381
|
+
super(IntervalUnit.DAY_TIME);
|
|
382
|
+
}
|
|
344
383
|
}
|
|
345
384
|
export class IntervalYearMonth extends Interval {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
385
|
+
constructor() {
|
|
386
|
+
super(IntervalUnit.YEAR_MONTH);
|
|
387
|
+
}
|
|
349
388
|
}
|
|
350
|
-
_Symbol$toStringTag7 = Symbol.toStringTag;
|
|
351
389
|
export class FixedSizeList extends DataType {
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
}
|
|
375
|
-
|
|
390
|
+
constructor(listSize, child) {
|
|
391
|
+
super();
|
|
392
|
+
this.listSize = listSize;
|
|
393
|
+
this.children = [child];
|
|
394
|
+
}
|
|
395
|
+
get typeId() {
|
|
396
|
+
return Type.FixedSizeList;
|
|
397
|
+
}
|
|
398
|
+
get valueType() {
|
|
399
|
+
return this.children[0].type;
|
|
400
|
+
}
|
|
401
|
+
get valueField() {
|
|
402
|
+
return this.children[0];
|
|
403
|
+
}
|
|
404
|
+
// get ArrayType() {
|
|
405
|
+
// return this.valueType.ArrayType;
|
|
406
|
+
// }
|
|
407
|
+
get [Symbol.toStringTag]() {
|
|
408
|
+
return 'FixedSizeList';
|
|
409
|
+
}
|
|
410
|
+
toString() {
|
|
411
|
+
return `FixedSizeList[${this.listSize}]<${this.valueType}>`;
|
|
412
|
+
}
|
|
413
|
+
}
|
|
376
414
|
export class Struct extends DataType {
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
}
|
|
392
|
-
//# sourceMappingURL=arrow-like-type.js.map
|
|
415
|
+
constructor(children) {
|
|
416
|
+
super();
|
|
417
|
+
this.children = children;
|
|
418
|
+
}
|
|
419
|
+
get typeId() {
|
|
420
|
+
return Type.Struct;
|
|
421
|
+
}
|
|
422
|
+
toString() {
|
|
423
|
+
return `Struct<{${this.children.map((f) => `${f.name}:${f.type}`).join(', ')}}>`;
|
|
424
|
+
}
|
|
425
|
+
get [Symbol.toStringTag]() {
|
|
426
|
+
return 'Struct';
|
|
427
|
+
}
|
|
428
|
+
}
|