You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
753 B

4 years ago
  1. if (typeof Object.create === 'function') {
  2. // implementation from standard node.js 'util' module
  3. module.exports = function inherits(ctor, superCtor) {
  4. if (superCtor) {
  5. ctor.super_ = superCtor
  6. ctor.prototype = Object.create(superCtor.prototype, {
  7. constructor: {
  8. value: ctor,
  9. enumerable: false,
  10. writable: true,
  11. configurable: true
  12. }
  13. })
  14. }
  15. };
  16. } else {
  17. // old school shim for old browsers
  18. module.exports = function inherits(ctor, superCtor) {
  19. if (superCtor) {
  20. ctor.super_ = superCtor
  21. var TempCtor = function () {}
  22. TempCtor.prototype = superCtor.prototype
  23. ctor.prototype = new TempCtor()
  24. ctor.prototype.constructor = ctor
  25. }
  26. }
  27. }