implementation.js 515 B

123456789101112131415161718192021222324252627282930
  1. 'use strict';
  2. var $Object = Object;
  3. var $TypeError = TypeError;
  4. module.exports = function flags() {
  5. if (this != null && this !== $Object(this)) {
  6. throw new $TypeError('RegExp.prototype.flags getter called on non-object');
  7. }
  8. var result = '';
  9. if (this.global) {
  10. result += 'g';
  11. }
  12. if (this.ignoreCase) {
  13. result += 'i';
  14. }
  15. if (this.multiline) {
  16. result += 'm';
  17. }
  18. if (this.dotAll) {
  19. result += 's';
  20. }
  21. if (this.unicode) {
  22. result += 'u';
  23. }
  24. if (this.sticky) {
  25. result += 'y';
  26. }
  27. return result;
  28. };