Constnium/node_modules/regexp.prototype.flags/implementation.js
2022-06-23 02:27:43 +02:00

39 lines
801 B
JavaScript

'use strict';
var functionsHaveConfigurableNames = require('functions-have-names').functionsHaveConfigurableNames();
var $Object = Object;
var $TypeError = TypeError;
module.exports = function flags() {
if (this != null && this !== $Object(this)) {
throw new $TypeError('RegExp.prototype.flags getter called on non-object');
}
var result = '';
if (this.hasIndices) {
result += 'd';
}
if (this.global) {
result += 'g';
}
if (this.ignoreCase) {
result += 'i';
}
if (this.multiline) {
result += 'm';
}
if (this.dotAll) {
result += 's';
}
if (this.unicode) {
result += 'u';
}
if (this.sticky) {
result += 'y';
}
return result;
};
if (functionsHaveConfigurableNames && Object.defineProperty) {
Object.defineProperty(module.exports, 'name', { value: 'get flags' });
}