nl_tokens: Sets the properties on an obj from the given prototype . Used in the case that Object . setPrototypeOf and Object . __proto__ is unavailable e . g . only IE < 11
pl_tokens: function iterateProperties ( _sub , _super ) { var props = Object . getOwnPropertyNames ( _super ) , proto ; _sub . __proto__ = _super ; // jshint ignore:line for ( var i = 0 , len = props . length ; i < len ; i ++ ) { var prop = props [ i ] ; if ( prop === '__proto__' ) { proto = _super . __proto__ ; // jshint ignore:line } else if ( exclude . indexOf ( i ) === - 1 ) { var descriptor = <mask> . getOwnPropertyDescriptor ( _sub , prop ) ; if ( ! descriptor ) { var superDescriptor = Object . getOwnPropertyDescriptor ( _super , prop ) ; if ( typeof superDescriptor . get !== 'function' && typeof _super [ prop ] === 'function' ) { _sub [ prop ] = bindFunction ( _sub , _super [ prop ] ) ; } else { bindProperty ( _sub , _super , prop ) ; } } } } if ( proto ) iterateProperties ( _sub , proto ) ; return _sub ; }