@brimdata/zealot
Version:
The Javascript Client for Zed Lakes
47 lines (46 loc) • 1.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "TypeSet", {
enumerable: true,
get: ()=>TypeSet
});
const _isNull = require("../utils/is-null");
const _set = require("../values/set");
function _defineProperty(obj, key, value) {
if (key in obj) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
class TypeSet {
static stringify(type) {
return `|[${type.toString()}]|`;
}
create(values, stream) {
return new _set.Set(this, (0, _isNull.isNull)(values) ? null : values.map((v)=>this.type.create(v, stream)));
}
serialize(stream) {
return {
kind: "set",
type: stream.encodeType(this.type)
};
}
toString() {
return `|[` + this.type.toString() + `]|`;
}
constructor(type){
_defineProperty(this, "type", void 0);
_defineProperty(this, "kind", void 0);
this.type = type;
this.kind = "set";
}
}