-
-
Notifications
You must be signed in to change notification settings - Fork 806
/
Copy pathrepl.txt
78 lines (60 loc) · 2.17 KB
/
repl.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
{{alias}}( predicate, x, y, done )
If a predicate function returns a truthy value, invokes `x`; otherwise,
invokes `y`.
The predicate function is provided a single argument:
- clbk: callback to invoke upon predicate function completion
The predicate function callback accepts two arguments:
- error: error object
- bool: condition used to determine whether to invoke `x` or `y`
Both `x` and `y` are provided a single argument:
- clbk: callback to invoke upon function completion
The callback function accepts any number of arguments, with the first
argument reserved for providing an error.
If the error argument is falsy, the `done` callback is invoked with its
first argument as `null` and all other provided arguments.
If the error argument is truthy, the `done` callback is invoked with only an
error argument.
Execution is *not* guaranteed to be asynchronous. To guarantee asynchrony,
wrap the `done` callback in a function which either executes at the end of
the current stack (e.g., `nextTick`) or during a subsequent turn of the
event loop (e.g., `setImmediate`, `setTimeout`).
Parameters
----------
predicate: Function
Predicate function.
x: Function
Function to invoke if a condition is truthy.
y: Function
Function to invoke if a condition is falsy.
done: Function
Callback to invoke upon completion.
Examples
--------
> function predicate( clbk ) {
... setTimeout( onTimeout, 0 );
... function onTimeout() {
... clbk( null, false );
... }
... };
> function x( clbk ) {
... setTimeout( onTimeout, 0 );
... function onTimeout() {
... clbk( null, 'beep' );
... }
... };
> function y( clbk ) {
... setTimeout( onTimeout, 0 );
... function onTimeout() {
... clbk( null, 'boop' );
... }
... };
> function done( error, result ) {
... if ( error ) {
... throw error;
... }
... console.log( result );
... };
> {{alias}}( predicate, x, y, done )
'boop'
See Also
--------