やりたいこと RxSwiftで「x秒間なにもイベントがなかったらそれまでの値をまとめて受け取りたい」という状況はよくあると思います。 例えばダブルタップだと「0.25秒間なにもイベントがなかったとき、それまでのタップ数が2回だったらダブルタップである」という判定ができます。 他言語では RxJSなどではこのような要件は buffer と debounce (throttle) を組み合わせると簡単に実現できます。 buffer の引数にどのタイミングでイベントをまとめるかの条件を渡せるので、debounce を使って「x秒間なにもなかったら」という条件を指定できます 1。 extension ObservableType { func debouncedBuffer(_ dueTime: RxTimeInterval, scheduler: SchedulerType) -> Observ