毕设专用git仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

39 lines
1.1 KiB

// src/common.ts
var kMovable = Symbol("Tinypool.kMovable");
var kTransferable = Symbol.for("Tinypool.transferable");
var kValue = Symbol.for("Tinypool.valueOf");
var kQueueOptions = Symbol.for("Tinypool.queueOptions");
function isTransferable(value) {
return value != null && typeof value === "object" && kTransferable in value && kValue in value;
}
function isMovable(value) {
return isTransferable(value) && value[kMovable] === true;
}
function markMovable(value) {
Object.defineProperty(value, kMovable, {
enumerable: false,
configurable: true,
writable: true,
value: true
});
}
function isTaskQueue(value) {
return typeof value === "object" && value !== null && "size" in value && typeof value.shift === "function" && typeof value.remove === "function" && typeof value.push === "function";
}
var kRequestCountField = 0;
var kResponseCountField = 1;
var kFieldCount = 2;
export {
kTransferable,
kValue,
kQueueOptions,
isTransferable,
isMovable,
markMovable,
isTaskQueue,
kRequestCountField,
kResponseCountField,
kFieldCount
};