es.regexp.flags.js 693 B

12345678910111213141516
  1. var DESCRIPTORS = require('../internals/descriptors');
  2. var objectDefinePropertyModule = require('../internals/object-define-property');
  3. var regExpFlags = require('../internals/regexp-flags');
  4. var fails = require('../internals/fails');
  5. var FORCED = DESCRIPTORS && fails(function () {
  6. // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
  7. return Object.getOwnPropertyDescriptor(RegExp.prototype, 'flags').get.call({ dotAll: true, sticky: true }) !== 'sy';
  8. });
  9. // `RegExp.prototype.flags` getter
  10. // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
  11. if (FORCED) objectDefinePropertyModule.f(RegExp.prototype, 'flags', {
  12. configurable: true,
  13. get: regExpFlags
  14. });