proto-star

0.1.0 • Public • Published

Proto*

Build Status Dependencies Status NPM version experimental

Proxy-based Self-and-Slate-inspired slow-as-fuck multiple-delegation for ECMAScript6-aka-JavaScript

Example

var Proto = require('proto-star')
 
var Healthy = Proto.cloneWith({
  move: function(direction) {
    this.x += direction * 2;
  }
})
 
var Hurt = Proto.cloneWith({
  move: function(direction) {
    this.x += direction
  }
})
 
var Shark = Proto.cloneWith({
  left: function() {
    this.move(-1)
    return this
  }
, right: function(){
    this.move(1)
    return this
  }
})
 
var bob = Shark.cloneWith({ x: 10 })
bob.addDelegation(Healthy)
bob.left() // { x: 8 }
bob.addDelegation(Hurt)
bob.left() // { x: 7 }
bob.removeDelegation(Hurt)
bob.left() // { x: 5 }

Installing

$ npm install proto-star

Platform support

You'll need Node 0.11+ and run stuff with the --harmony flag.

Licence

Copyright (c) 2013 Quildreen Motta.

Released under the MIT licence.

Readme

Keywords

none

Package Sidebar

Install

npm i proto-star

Weekly Downloads

1

Version

0.1.0

License

MIT

Last publish

Collaborators

  • killdream