@cran/lib.gql.core
Version:
GQL Core Functionality
21 lines (20 loc) • 738 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.setExtension = exports.getExtension = exports.hasExtension = exports.getExtensions = void 0;
function getExtensions(extendable) {
return (extendable.extensions ??= {});
}
exports.getExtensions = getExtensions;
function hasExtension(extendable, key) {
return key in getExtensions(extendable);
}
exports.hasExtension = hasExtension;
function getExtension(extendable, key, fallback) {
const extensions = getExtensions(extendable);
return (extensions[key] ??= fallback);
}
exports.getExtension = getExtension;
function setExtension(extendable, key, value) {
getExtensions(extendable)[key] = value;
}
exports.setExtension = setExtension;