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.
		
		
		
		
		
			|  | 3 years ago | |
|---|---|---|
| .. | ||
| test | 3 years ago | |
| .npmignore | 3 years ago | |
| History.md | 3 years ago | |
| License | 3 years ago | |
| Makefile | 3 years ago | |
| Readme.md | 3 years ago | |
| index.js | 3 years ago | |
| package.json | 3 years ago | |
		
			
				
				Readme.md
			
		
		
			
			
		
	
	delegates
Node method and accessor delegation utilty.
Installation
$ npm install delegates
Example
var delegate = require('delegates');
...
delegate(proto, 'request')
  .method('acceptsLanguages')
  .method('acceptsEncodings')
  .method('acceptsCharsets')
  .method('accepts')
  .method('is')
  .access('querystring')
  .access('idempotent')
  .access('socket')
  .access('length')
  .access('query')
  .access('search')
  .access('status')
  .access('method')
  .access('path')
  .access('body')
  .access('host')
  .access('url')
  .getter('subdomains')
  .getter('protocol')
  .getter('header')
  .getter('stale')
  .getter('fresh')
  .getter('secure')
  .getter('ips')
  .getter('ip')
API
Delegate(proto, prop)
Creates a delegator instance used to configure using the prop on the given
proto object. (which is usually a prototype)
Delegate#method(name)
Allows the given method name to be accessed on the host.
Delegate#getter(name)
Creates a "getter" for the property with the given name on the delegated
object.
Delegate#setter(name)
Creates a "setter" for the property with the given name on the delegated
object.
Delegate#access(name)
Creates an "accessor" (ie: both getter and setter) for the property with the
given name on the delegated object.
Delegate#fluent(name)
A unique type of "accessor" that works for a "fluent" API. When called as a getter, the method returns the expected value. However, if the method is called with a value, it will return itself so it can be chained. For example:
delegate(proto, 'request')
  .fluent('query')
// getter
var q = request.query();
// setter (chainable)
request
  .query({ a: 1 })
  .query({ b: 2 });
License
MIT