node-emitter-details
v1.0.0
Published
Provide specs for node's event emitters.
Downloads
6
Readme
Node Emitter Details
Installation
> npm install node-emitter-details
Example
"use strict";
var util = require("util");
var getDetails = require("node-emitter-details");
var noop = function noop () {};
var put = function () {
process.stdout.write.call(process.stdout, arguments[0]);
};
var e = new (require("events"))();
e.on("action", function onAction (){});
var d = getDetails(e, {excludeEvents: ["newListener", "removeListener"]});
e.emit("action", "apple", "kills", "aman");
put(util.inspect(d, {
colors: true,
depth: 4
}));
Output:
API
When exp is:
var exp = require("node-emitter-details");
exp(eventEmitter, [opts])
eventEmitter
, any instance ofEventEmitter
opts
an options object where:excludeEvents
, is an array of events to disregard and not trackexcludeHandlers
, is an array of handlers to disregard and not tracksaveInactiveEventDetails
, is a boolean indicating if it should keep the memory of an EventDetails whose events have all been removed (inactive)
returns an instance of
EmitterDetails
, see Emitter Details section.
exp.trackEvent(emitter, event)
emitter
, any instance ofEvent Emitter
event
, string name of eventreturns an instance of
EventDetails
(see Event Details) with the provided event registered to be tracked
Details Objects
Emitter Details
emitter
- The event emitter being tracked.
events
- Any or none instances of
EventDetails
- Any or none instances of
emittedEvents
- Any or none strings of events that have emitted.
getEventNames()
- returns an array of event names being tracked
getEventDetails(eName)
eName
, event name as a stringreturns the
EventDetails
(see EventDetails) of the event ornull
excludeEvent(eName)
eName
, event name as a stringexcludes the event from being tracked
Event Details
listeners
- Array of arrays containing pairs of listener to
HandlerDetails
.
- Array of arrays containing pairs of listener to
timesEmitted
- Number of times emitted
dateCreated
- instance of
Date
when the listener was added
- instance of
prevArgs
- Copy of
arguments
the listeners are supplied with.
- Copy of
name
String of the event name.
parent
- Pointer to
EmitterDetails
that created it.
- Pointer to
getHandlerDetails(fn)
fn
, event handler- returns instance of
HandlerDetails
(see Handler Details) of the handler details object that matches the provided function ornull
.
getHandlers()
- returns all the handlers listening for the event
getHandlersDetails()
- returns all the handler details corresponding to the event
onUpdate(fn)
fn
callback, called next time there is an change of properties. This happens when any of the events pertaining to the parent object are emitted. Event details instance is passed as the only arguments.
excludeHandler(handler)
handler
, function to exclude fro being tracked
Handler Details
arity
- Length of function signature (parameters).
prevStackTrace
- String of stack trace of last time it was called
parent
- Pointer to
EventDetails
that it belongs to.
- Pointer to