A-New-Day-001's picture
Upload 1591 files
be5030f
{"version":3,"sources":["util/args.ts"],"names":[],"mappings":"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","file":"args.js","sourcesContent":["// Licensed to the Apache Software Foundation (ASF) under one\n// or more contributor license agreements. See the NOTICE file\n// distributed with this work for additional information\n// regarding copyright ownership. The ASF licenses this file\n// to you under the Apache License, Version 2.0 (the\n// \"License\"); you may not use this file except in compliance\n// with the License. You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing,\n// software distributed under the License is distributed on an\n// \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n// KIND, either express or implied. See the License for the\n// specific language governing permissions and limitations\n// under the License.\n\nimport { Data } from '../data';\nimport { Field } from '../schema';\nimport { Column } from '../column';\nimport { Vector } from '../vector';\nimport { DataType } from '../type';\nimport { Chunked } from '../vector/chunked';\n\ntype RecordBatchCtor = typeof import('../recordbatch').RecordBatch;\n\nconst isArray = Array.isArray;\n\n/** @ignore */\nexport const selectArgs = <T>(Ctor: any, vals: any[]) => _selectArgs(Ctor, vals, [], 0) as T[];\n/** @ignore */\nexport const selectColumnArgs = <T extends { [key: string]: DataType }>(args: any[]) => {\n const [fields, values] = _selectFieldArgs<T>(args, [[], []]);\n return values.map((x, i) =>\n x instanceof Column ? Column.new(x.field.clone(fields[i]), x) :\n x instanceof Vector ? Column.new(fields[i], x) as Column<T[keyof T]> :\n Column.new(fields[i], [] as Vector<T[keyof T]>[]));\n};\n\n/** @ignore */\nexport const selectFieldArgs = <T extends { [key: string]: DataType }>(args: any[]) => _selectFieldArgs<T>(args, [[], []]);\n/** @ignore */\nexport const selectChunkArgs = <T>(Ctor: any, vals: any[]) => _selectChunkArgs(Ctor, vals, [], 0) as T[];\n/** @ignore */\nexport const selectVectorChildrenArgs = <T extends Vector>(Ctor: RecordBatchCtor, vals: any[]) => _selectVectorChildrenArgs(Ctor, vals, [], 0) as T[];\n/** @ignore */\nexport const selectColumnChildrenArgs = <T extends Column>(Ctor: RecordBatchCtor, vals: any[]) => _selectColumnChildrenArgs(Ctor, vals, [], 0) as T[];\n\n/** @ignore */\nfunction _selectArgs<T>(Ctor: any, vals: any[], res: T[], idx: number) {\n let value: any, j = idx;\n let i = -1, n = vals.length;\n while (++i < n) {\n if (isArray(value = vals[i])) {\n j = _selectArgs(Ctor, value, res, j).length;\n } else if (value instanceof Ctor) { res[j++] = value; }\n }\n return res;\n}\n\n/** @ignore */\nfunction _selectChunkArgs<T>(Ctor: any, vals: any[], res: T[], idx: number) {\n let value: any, j = idx;\n let i = -1, n = vals.length;\n while (++i < n) {\n if (isArray(value = vals[i])) {\n j = _selectChunkArgs(Ctor, value, res, j).length;\n } else if (value instanceof Chunked) {\n j = _selectChunkArgs(Ctor, value.chunks, res, j).length;\n } else if (value instanceof Ctor) { res[j++] = value; }\n }\n return res;\n}\n\n/** @ignore */\nfunction _selectVectorChildrenArgs<T extends Vector>(Ctor: RecordBatchCtor, vals: any[], res: T[], idx: number) {\n let value: any, j = idx;\n let i = -1, n = vals.length;\n while (++i < n) {\n if (isArray(value = vals[i])) {\n j = _selectVectorChildrenArgs(Ctor, value, res, j).length;\n } else if (value instanceof Ctor) {\n j = _selectArgs(Vector, value.schema.fields.map((_, i) => value.getChildAt(i)!), res, j).length;\n } else if (value instanceof Vector) { res[j++] = value as T; }\n }\n return res;\n}\n\n/** @ignore */\nfunction _selectColumnChildrenArgs<T extends Column>(Ctor: RecordBatchCtor, vals: any[], res: T[], idx: number) {\n let value: any, j = idx;\n let i = -1, n = vals.length;\n while (++i < n) {\n if (isArray(value = vals[i])) {\n j = _selectColumnChildrenArgs(Ctor, value, res, j).length;\n } else if (value instanceof Ctor) {\n j = _selectArgs(Column, value.schema.fields.map((f, i) => Column.new(f, value.getChildAt(i)!)), res, j).length;\n } else if (value instanceof Column) { res[j++] = value as T; }\n }\n return res;\n}\n\n/** @ignore */\nconst toKeysAndValues = (xs: [any[], any[]], [k, v]: [any, any], i: number) => (xs[0][i] = k, xs[1][i] = v, xs);\n\n/** @ignore */\nfunction _selectFieldArgs<T extends { [key: string]: DataType }>(vals: any[], ret: [Field<T[keyof T]>[], Vector<T[keyof T]>[]]): [Field<T[keyof T]>[], (T[keyof T] | Vector<T[keyof T]>)[]] {\n let keys: any[], n: number;\n switch (n = vals.length) {\n case 0: return ret;\n case 1:\n keys = ret[0];\n if (!(vals[0])) { return ret; }\n if (isArray(vals[0])) { return _selectFieldArgs(vals[0], ret); }\n if (!(vals[0] instanceof Data || vals[0] instanceof Vector || vals[0] instanceof DataType)) {\n [keys, vals] = Object.entries(vals[0]).reduce(toKeysAndValues, ret);\n }\n break;\n default:\n !isArray(keys = vals[n - 1])\n ? (vals = isArray(vals[0]) ? vals[0] : vals, keys = [])\n : (vals = isArray(vals[0]) ? vals[0] : vals.slice(0, n - 1));\n }\n\n let fieldIndex = -1;\n let valueIndex = -1;\n let idx = -1, len = vals.length;\n let field: number | string | Field<T[keyof T]>;\n let val: Vector<T[keyof T]> | Data<T[keyof T]>;\n let [fields, values] = ret as [Field<T[keyof T]>[], any[]];\n\n while (++idx < len) {\n val = vals[idx];\n if (val instanceof Column && (values[++valueIndex] = val)) {\n fields[++fieldIndex] = val.field.clone(keys[idx], val.type, true);\n } else {\n ({ [idx]: field = idx } = keys);\n if (val instanceof DataType && (values[++valueIndex] = val)) {\n fields[++fieldIndex] = Field.new(field, val as DataType, true) as Field<T[keyof T]>;\n } else if (val && val.type && (values[++valueIndex] = val)) {\n val instanceof Data && (values[valueIndex] = val = Vector.new(val) as Vector);\n fields[++fieldIndex] = Field.new(field, val.type, true) as Field<T[keyof T]>;\n }\n }\n }\n return ret;\n}\n"]}