28 lines
		
	
	
		
			753 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			753 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
if (typeof Object.create === 'function') {
 | 
						|
  // implementation from standard node.js 'util' module
 | 
						|
  module.exports = function inherits(ctor, superCtor) {
 | 
						|
    if (superCtor) {
 | 
						|
      ctor.super_ = superCtor
 | 
						|
      ctor.prototype = Object.create(superCtor.prototype, {
 | 
						|
        constructor: {
 | 
						|
          value: ctor,
 | 
						|
          enumerable: false,
 | 
						|
          writable: true,
 | 
						|
          configurable: true
 | 
						|
        }
 | 
						|
      })
 | 
						|
    }
 | 
						|
  };
 | 
						|
} else {
 | 
						|
  // old school shim for old browsers
 | 
						|
  module.exports = function inherits(ctor, superCtor) {
 | 
						|
    if (superCtor) {
 | 
						|
      ctor.super_ = superCtor
 | 
						|
      var TempCtor = function () {}
 | 
						|
      TempCtor.prototype = superCtor.prototype
 | 
						|
      ctor.prototype = new TempCtor()
 | 
						|
      ctor.prototype.constructor = ctor
 | 
						|
    }
 | 
						|
  }
 | 
						|
}
 |