Node.js programming - bellbind/node-v4l2camera GitHub Wiki
Avoid to crush node runtime by calling a constructor of native object without new
As as module exports, to provide a wrapped JS function to call the constructor with new. e.g.
var nativemod = require("build/Release/mynativemod");
exports.Ctor = function () {
return new nativemod.Ctor();
};
Generic constructor wrapper by bind with new
If usual functions, you can use apply or call and arguments for forwarding wrapped functions.
For wrapping constructors, combine with ECMAScript5 bind as:
var WrapperCtor = function Ctor() {
var args = [null].concat([].slice.call(arguments));
var ctor = RawCtor.bind.apply(RawCtor, args);
return new ctor;
};
note: wrap constructor with explicit arguments
var WrappedCtor = function Ctor(arg1, arg2) {
var ctor = RawCtor.bind(null, arg1, arg2);
return new ctor;
};
Generic version is switched bind call with apply and arguments.