Skip to content

Latest commit

 

History

History
43 lines (32 loc) · 1.49 KB

README.md

File metadata and controls

43 lines (32 loc) · 1.49 KB

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
})