MCPcopy Create free account
hub / github.com/microsoft/SandDance / getTransferList

Function getTransferList

docs/app/js/sanddance-app.js:53008–53018  ·  view source on GitHub ↗
(object)

Source from the content-addressed store, hash-verified

53006var _typeof = require("@babel/runtime/helpers/esm/typeof");
53007var _typeofDefault = parcelHelpers.interopDefault(_typeof);
53008function getTransferList(object) {
53009 var recursive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
53010 var transfers = arguments.length > 2 ? arguments[2] : undefined;
53011 var transfersSet = transfers || new Set();
53012 if (!object) ;
53013 else if (isTransferable(object)) transfersSet.add(object);
53014 else if (isTransferable(object.buffer)) transfersSet.add(object.buffer);
53015 else if (ArrayBuffer.isView(object)) ;
53016 else if (recursive && (0, _typeofDefault.default)(object) === "object") for(var key in object)getTransferList(object[key], recursive, transfersSet);
53017 return transfers === undefined ? Array.from(transfersSet) : [];
53018}
53019function isTransferable(object) {
53020 if (!object) return false;
53021 if (object instanceof ArrayBuffer) return true;

Callers

nothing calls this directly

Calls 3

isTransferableFunction · 0.70
addMethod · 0.45
fromMethod · 0.45

Tested by

no test coverage detected