extend-proto

generic `__proto__` injection utility

Usage no npm install needed!

<script type="module">
  import extendProto from 'https://cdn.skypack.dev/extend-proto';
</script>

README

extend-proto

NPM Version NPM Downloads Node.js Version Build Status Test Coverage

A utility to inject a prototype chain, fully generic and adaptable.

This largely exists for performance. Injecting a single prototype with many properties on it has been historically faster than adding those properties to an existing instance.

var http = require('http')
var proto = require('extend-proto')

var proto = Proto({
    req: http.IncomingMessage,
    res: http.ServerResponse
})
proto.req.defineProperty('kittens', { value: 'the best' })

http.createServer(function(req, res) {
  proto(req, res)

  req.kittens // the best
})

MIT Licensed