diff options
author | Kat Marchán <kzm@sykosomatic.org> | 2017-07-14 10:52:48 -0700 |
---|---|---|
committer | James M Snell <jasnell@gmail.com> | 2017-07-17 08:49:02 -0700 |
commit | 24f43903b4a2f5aa73a99e6f3d4cc62d559cf94b (patch) | |
tree | 9c32bd08c43de8721e54cd846d816fbe6cdf056e /deps/npm/node_modules/worker-farm/lib/child/index.js | |
parent | fa73087fcf4bd14db7791120e688a0a508885b64 (diff) | |
download | android-node-v8-24f43903b4a2f5aa73a99e6f3d4cc62d559cf94b.tar.gz android-node-v8-24f43903b4a2f5aa73a99e6f3d4cc62d559cf94b.tar.bz2 android-node-v8-24f43903b4a2f5aa73a99e6f3d4cc62d559cf94b.zip |
deps: upgrade npm to 5.3.0
PR-URL: https://github.com/nodejs/node/pull/14235
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'deps/npm/node_modules/worker-farm/lib/child/index.js')
-rw-r--r-- | deps/npm/node_modules/worker-farm/lib/child/index.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/deps/npm/node_modules/worker-farm/lib/child/index.js b/deps/npm/node_modules/worker-farm/lib/child/index.js new file mode 100644 index 0000000000..f91e08433a --- /dev/null +++ b/deps/npm/node_modules/worker-farm/lib/child/index.js @@ -0,0 +1,52 @@ +'use strict' + +let $module + +/* + let contextProto = this.context; + while (contextProto = Object.getPrototypeOf(contextProto)) { + completionGroups.push(Object.getOwnPropertyNames(contextProto)); + } +*/ + + +function handle (data) { + let idx = data.idx + , child = data.child + , method = data.method + , args = data.args + , callback = function () { + let _args = Array.prototype.slice.call(arguments) + if (_args[0] instanceof Error) { + let e = _args[0] + _args[0] = { + '$error' : '$error' + , 'type' : e.constructor.name + , 'message' : e.message + , 'stack' : e.stack + } + Object.keys(e).forEach(function(key) { + _args[0][key] = e[key] + }) + } + process.send({ idx: idx, child: child, args: _args }) + } + , exec + + if (method == null && typeof $module == 'function') + exec = $module + else if (typeof $module[method] == 'function') + exec = $module[method] + + if (!exec) + return console.error('NO SUCH METHOD:', method) + + exec.apply(null, args.concat([ callback ])) +} + + +process.on('message', function (data) { + if (!$module) return $module = require(data.module) + if (data == 'die') return process.exit(0) + handle(data) +}) |