spawn.js 701 B

1234567891011121314151617181920212223242526272829303132
  1. function spawnFactory(_namespace, _debugFabFactory) {
  2. var namespace = _namespace || '';
  3. var debugFabFactory = _debugFabFactory;
  4. if(!debugFabFactory){
  5. debugFabFactory = require('./debugFabFactory')();
  6. }
  7. function spawn(ns) {
  8. // this is this.debug (from Debugger)
  9. var dbg = new Debugger(this.namespace, ns);
  10. return dbg.debug;
  11. };
  12. function Debugger(_base, _ns){
  13. var base = _base || '';
  14. var ns = _ns || '';
  15. var newNs = ns ? [base, ns].join(':') : base;
  16. var debug = debugFabFactory(newNs);
  17. this.debug = debug;
  18. this.debug.spawn = spawn;
  19. }
  20. var rootDebug = (new Debugger(namespace)).debug;
  21. return rootDebug;
  22. };
  23. module.exports = spawnFactory;