function ReplaySubject(bufferSize, windowSize, scheduler) {
      this.bufferSize = bufferSize == null ? maxSafeInteger : bufferSize;
      this.windowSize = windowSize == null ? maxSafeInteger : windowSize;
      this.scheduler = scheduler || currentThreadScheduler;
      this.q = [];
      this.observers = [];
      this.isStopped = false;
      this.isDisposed = false;
      this.hasError = false;
      this.error = null;
      __super__.call(this);
    }
Initializes a new instance of the ReplaySubject class with the specified buffer size, window size and scheduler.
 @param {Number} [bufferSize] Maximum element count of the replay buffer.
 @param {Number} [windowSize] Maximum time length of the replay buffer.
 @param {Scheduler} [scheduler] Scheduler the observers are invoked on.