aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules/es6.regexp.to-string.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/core-js/modules/es6.regexp.to-string.js')
-rw-r--r--node_modules/core-js/modules/es6.regexp.to-string.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/es6.regexp.to-string.js b/node_modules/core-js/modules/es6.regexp.to-string.js
new file mode 100644
index 000000000..699aeff29
--- /dev/null
+++ b/node_modules/core-js/modules/es6.regexp.to-string.js
@@ -0,0 +1,25 @@
+'use strict';
+require('./es6.regexp.flags');
+var anObject = require('./_an-object')
+ , $flags = require('./_flags')
+ , DESCRIPTORS = require('./_descriptors')
+ , TO_STRING = 'toString'
+ , $toString = /./[TO_STRING];
+
+var define = function(fn){
+ require('./_redefine')(RegExp.prototype, TO_STRING, fn, true);
+};
+
+// 21.2.5.14 RegExp.prototype.toString()
+if(require('./_fails')(function(){ return $toString.call({source: 'a', flags: 'b'}) != '/a/b'; })){
+ define(function toString(){
+ var R = anObject(this);
+ return '/'.concat(R.source, '/',
+ 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
+ });
+// FF44- RegExp#toString has a wrong name
+} else if($toString.name != TO_STRING){
+ define(function toString(){
+ return $toString.call(this);
+ });
+} \ No newline at end of file