artdaq_node_server  v1_00_07
 All Classes Namespaces Files Variables Pages
_createBind.js
1 var createCtor = require('./_createCtor'),
2  root = require('./_root');
3 
5 var WRAP_BIND_FLAG = 1;
6 
17 function createBind(func, bitmask, thisArg) {
18  var isBind = bitmask & WRAP_BIND_FLAG,
19  Ctor = createCtor(func);
20 
21  function wrapper() {
22  var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
23  return fn.apply(isBind ? thisArg : this, arguments);
24  }
25  return wrapper;
26 }
27 
28 module.exports = createBind;