Sha256: 3f33b3eeb7c3246b410b2e94975e9d015a314a34cf1d89f6489ba6ea45360bef
Contents?: true
Size: 779 Bytes
Versions: 63
Compression:
Stored size: 779 Bytes
Contents
'use strict'; var supportsDescriptors = require('define-properties').supportsDescriptors; var getPolyfill = require('./polyfill'); var gOPD = Object.getOwnPropertyDescriptor; var defineProperty = Object.defineProperty; var TypeErr = TypeError; var getProto = Object.getPrototypeOf; var regex = /a/; module.exports = function shimFlags() { if (!supportsDescriptors || !getProto) { throw new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors'); } var polyfill = getPolyfill(); var proto = getProto(regex); var descriptor = gOPD(proto, 'flags'); if (!descriptor || descriptor.get !== polyfill) { defineProperty(proto, 'flags', { configurable: true, enumerable: false, get: polyfill }); } return polyfill; };
Version data entries
63 entries across 62 versions & 9 rubygems