(err, result)
| 6406 | next(null); |
| 6407 | |
| 6408 | function next(err, result) { |
| 6409 | |
| 6410 | var g, type; |
| 6411 | |
| 6412 | try |
| 6413 | { |
| 6414 | var can = err ? false : true; |
| 6415 | switch (can) { |
| 6416 | case true: |
| 6417 | g = generator.next(result); |
| 6418 | break; |
| 6419 | case false: |
| 6420 | g = generator.throw(err); |
| 6421 | break; |
| 6422 | } |
| 6423 | |
| 6424 | } catch (e) { |
| 6425 | |
| 6426 | if (!complete) |
| 6427 | return; |
| 6428 | |
| 6429 | type = typeof(complete); |
| 6430 | |
| 6431 | if (type === 'object' && complete.isController) { |
| 6432 | if (e instanceof ErrorBuilder) |
| 6433 | complete.content(e); |
| 6434 | else |
| 6435 | complete.view500(e); |
| 6436 | return; |
| 6437 | } |
| 6438 | |
| 6439 | type === 'function' && setImmediate(() => complete(e)); |
| 6440 | return; |
| 6441 | } |
| 6442 | |
| 6443 | if (g.done) { |
| 6444 | typeof(complete) === 'function' && complete(null, g.value); |
| 6445 | return; |
| 6446 | } |
| 6447 | |
| 6448 | var promise = g.value instanceof Promise; |
| 6449 | |
| 6450 | if (typeof(g.value) !== 'function' && !promise) { |
| 6451 | next.call(self, null, g.value); |
| 6452 | return; |
| 6453 | } |
| 6454 | |
| 6455 | try |
| 6456 | { |
| 6457 | if (promise) { |
| 6458 | g.value.then((value) => next.call(self, null, value)); |
| 6459 | return; |
| 6460 | } |
| 6461 | |
| 6462 | g.value.call(self, function() { |
| 6463 | next.apply(self, arguments); |
| 6464 | }); |
| 6465 |
no outgoing calls
no test coverage detected