events: load internal/errors eagerly · nodejs/node@7022609 (original) (raw)
`@@ -23,6 +23,12 @@
`
23
23
``
24
24
`var spliceOne;
`
25
25
``
``
26
`+
const {
`
``
27
`+
ERR_INVALID_ARG_TYPE,
`
``
28
`+
ERR_OUT_OF_RANGE,
`
``
29
`+
ERR_UNHANDLED_ERROR
`
``
30
`+
} = require('internal/errors').codes;
`
``
31
+
26
32
`function EventEmitter() {
`
27
33
`EventEmitter.init.call(this);
`
28
34
`}
`
`@@ -42,17 +48,9 @@ EventEmitter.prototype._maxListeners = undefined;
`
42
48
`// added to it. This is a useful default which helps finding memory leaks.
`
43
49
`var defaultMaxListeners = 10;
`
44
50
``
45
``
`-
var errors;
`
46
``
`-
function lazyErrors() {
`
47
``
`-
if (errors === undefined)
`
48
``
`-
errors = require('internal/errors').codes;
`
49
``
`-
return errors;
`
50
``
`-
}
`
51
``
-
52
51
`function checkListener(listener) {
`
53
52
`if (typeof listener !== 'function') {
`
54
``
`-
const errors = lazyErrors();
`
55
``
`-
throw new errors.ERR_INVALID_ARG_TYPE('listener', 'Function', listener);
`
``
53
`+
throw new ERR_INVALID_ARG_TYPE('listener', 'Function', listener);
`
56
54
`}
`
57
55
`}
`
58
56
``
`@@ -63,10 +61,9 @@ Object.defineProperty(EventEmitter, 'defaultMaxListeners', {
`
63
61
`},
`
64
62
`set: function(arg) {
`
65
63
`if (typeof arg !== 'number' || arg < 0 || Number.isNaN(arg)) {
`
66
``
`-
const errors = lazyErrors();
`
67
``
`-
throw new errors.ERR_OUT_OF_RANGE('defaultMaxListeners',
`
68
``
`-
'a non-negative number',
`
69
``
`-
arg);
`
``
64
`+
throw new ERR_OUT_OF_RANGE('defaultMaxListeners',
`
``
65
`+
'a non-negative number',
`
``
66
`+
arg);
`
70
67
`}
`
71
68
`defaultMaxListeners = arg;
`
72
69
`}
`
`@@ -87,8 +84,7 @@ EventEmitter.init = function() {
`
87
84
`// that to be increased. Set to zero for unlimited.
`
88
85
`EventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {
`
89
86
`if (typeof n !== 'number' || n < 0 || Number.isNaN(n)) {
`
90
``
`-
const errors = lazyErrors();
`
91
``
`-
throw new errors.ERR_OUT_OF_RANGE('n', 'a non-negative number', n);
`
``
87
`+
throw new ERR_OUT_OF_RANGE('n', 'a non-negative number', n);
`
92
88
`}
`
93
89
`this._maxListeners = n;
`
94
90
`return this;
`
`@@ -183,8 +179,7 @@ EventEmitter.prototype.emit = function emit(type, ...args) {
`
183
179
`}
`
184
180
``
185
181
`// At least give some kind of context to the user
`
186
``
`-
const errors = lazyErrors();
`
187
``
`-
const err = new errors.ERR_UNHANDLED_ERROR(stringifiedEr);
`
``
182
`+
const err = new ERR_UNHANDLED_ERROR(stringifiedEr);
`
188
183
`err.context = er;
`
189
184
`throw err; // Unhandled 'error' event
`
190
185
`}
`