U vi @ s d dl mZmZmZmZ d dlmZmZm Z d dlm Z d dl mZ edZd e j eej eee gee f ddd Zd gZdS ) )AnyCallableOptionalTypeVar) Observableabctyping)CompositeDisposable)TimeoutScheduler_TN)duration schedulerreturnc s" t t t t d fdd}|S )N)sourcer c s. dt jt tt j d fdd }t|S )a Skips elements for the specified duration from the start of the observable source sequence. Args: >>> res = skip_with_time(5.0) Specifying a zero value for duration doesn't guarantee no elements will be dropped from the start of the source sequence. This is a side-effect of the asynchrony introduced by the scheduler, where the action that causes callbacks from the source sequence to be forwarded may not execute immediately, despite the zero due time. Errors produced by the source sequence are always forwarded to the result sequence, even if the error occurs before the duration. Args: duration: Duration for skipping elements from the start of the sequence. Returns: An observable sequence with the elements skipped during the specified duration from the start of the source sequence. N)observer scheduler_c sn p|pt }dgtjtd dfdd}||}td fdd}j| j j |d}t ||S ) NF)r stater c s d d<