Skip to content

Instantly share code, notes, and snippets.

@Raynos
Created October 17, 2011 09:50
Show Gist options
  • Select an option

  • Save Raynos/1292301 to your computer and use it in GitHub Desktop.

Select an option

Save Raynos/1292301 to your computer and use it in GitHub Desktop.
// require("pd").extendNatives();
// - https://github.com/Raynos/pd
var SuperStar = {
constructor: function _constructor() {
this._fans = [];
},
addFan: function _addFan(fan) {
this._fans.push(fan);
return this;
},
getFans: function _getFans() { return this._fans; }
};
var RockStar = Object.create(SuperStar);
var Fan = {}
var rockstar1 = Rockstar.new();
var fan1 = Fan.new(), fan2 = Fan.new();
rockstar1.addFan(fan1).addFan(fan2);
var new_fan1 = SuperStar.new();
Object.defineProperties(new_fan1, Object.getOwnPropertyDescriptors(fan1));
fan1 = new_fan1;
var new_rockstar1 = Fan.new();
Object.defineProperties(new_rockstar1, Object.getOwnPropertyDescriptors(rockstar1));
rockstar1 = new_rockstar1;
fan1.addFan(fan2).addFan(rockstar1);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment