function ArrayStream(arr, options) {
    var self = this;
    this._reading = false;
    this._closing = false;
    this._index = 0;
    options = options || {};
    this._duplex = options.duplex || false;

    this.set(arr);

    Duplex.call(this, {
        objectMode: true,
        highWaterMark: options.highWaterMark || Math.pow(2, 10)
    });
}
function ArrayStream(arr, options) {
    var self = this;
    this._reading = false;
    this._closing = false;
    this._index = 0;
    options = options || {};
    this._duplex = options.duplex || false;

    this.set(arr);

    Duplex.call(this, {
        objectMode: true,
        highWaterMark: options.highWaterMark || Math.pow(2, 10)
    });
}
function ArrayStream ( arr , options ) { var self = this ; this . _reading = false ; this . _closing = false ; this . _index = 0 ; options = options || { } ; this . _duplex = options . duplex || false ; this . set ( arr ) ; Duplex . call ( this , { objectMode : true , highWaterMark : options . highWaterMark || Math . pow ( 2 , 10 ) } ) ; }
@constructor

@param  {Array}  arr     (optional) Array to stream
@param  {Object} options {duplex: false}
@constructor