nl_tokens: Constructor .
pl_tokens: function SjlSet ( iterable ) { var self = this , _values = [ ] ; // Define own props Object . defineProperties ( this , { /**
                   * @name _values
                   * @member {Array<*>} sjl.stdlib.SjlSet#_values - Where the values are kept on the Set.  Default `[]`.
                   * @readonly
                   */ _values : { value : _values } , /**
                   * @name size
                   * @member {Number} sjl.stdlib.SjlSet#size - Size of Set.  Default `0`.
                   * @readonly
                   */ size : { get : function ( ) { return _values . length ; } , enumerable : true } } ) ; // If an array was passed in inject values if ( sjl . classOfIs ( iterable , 'Array' ) ) { self . addFromArray ( iterable ) ; } // If anything other than an array is passed in throw an Error else if ( typeof iterable !== _undefined ) { throw new Error ( 'Type Error: sjl.SjlSet takes only iterable objects as it\'s first parameter. ' + ' Parameter received: ' , iterable ) ; } // Make our `_values` array inherit our special iterator makeIterable ( _values ) ; // Set custom iterator function on `this` self [ sjl . Symbol . iterator ] = function ( ) { return <mask> ObjectIterator ( _values , _values ) ; } ; /**
               * Flag for knowing that default es6 iterator was overridden.  Set on construction.
               * @name _iteratorOverridden
               * @member {Boolean} sjl.stdlib.SjlSet#_iteratorOverridden.  Default `true`.
               * @readonly
               */ // Set flag to remember that original iterator was overridden Object . defineProperty ( self , '_iteratorOverridden' , { value : true } ) ; }