summaryrefslogtreecommitdiff
path: root/lib/nextTick.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nextTick.js')
-rw-r--r--lib/nextTick.js16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/nextTick.js b/lib/nextTick.js
index 66a4c1f..a69b87e 100644
--- a/lib/nextTick.js
+++ b/lib/nextTick.js
@@ -1,4 +1,6 @@
-import setImmediate from './internal/setImmediate';
+'use strict';
+
+import { hasNexTick, hasSetImmediate, fallback, wrap } from './internal/setImmediate';
/**
* Calls `callback` on a later loop around the event loop. In Node.js this just
@@ -30,4 +32,14 @@ import setImmediate from './internal/setImmediate';
* // a, b, and c equal 1, 2, and 3
* }, 1, 2, 3);
*/
-export default setImmediate;
+var _defer;
+
+if (hasNexTick) {
+ _defer = process.nextTick;
+} else if (hasSetImmediate) {
+ _defer = setImmediate;
+} else {
+ _defer = fallback;
+}
+
+export default wrap(_defer);