Browse Source

Merge pull request #9027 from Snuffleupagus/core-js-WeakMap

Replace our `WeakMap` polyfill with the one from core-js
Tim van der Meij 8 years ago committed by GitHub
parent
commit
e955168cab
  1. 30
      src/shared/compatibility.js

30
src/shared/compatibility.js

@ -1195,35 +1195,7 @@ PDFJS.compatibilityChecked = true;
if (globalScope.WeakMap) { if (globalScope.WeakMap) {
return; return;
} }
globalScope.WeakMap = require('core-js/fn/weak-map');
var id = 0;
function WeakMap() {
this.id = '$weakmap' + (id++);
}
WeakMap.prototype = {
has(obj) {
if ((typeof obj !== 'object' && typeof obj !== 'function') ||
obj === null) {
return false;
}
return !!Object.getOwnPropertyDescriptor(obj, this.id);
},
get(obj) {
return this.has(obj) ? obj[this.id] : undefined;
},
set(obj, value) {
Object.defineProperty(obj, this.id, {
value,
enumerable: false,
configurable: true,
});
},
delete(obj) {
delete obj[this.id];
},
};
globalScope.WeakMap = WeakMap;
})(); })();
// Polyfill from https://github.com/Polymer/URL // Polyfill from https://github.com/Polymer/URL

Loading…
Cancel
Save