U vâ’i ã@s¬ddlmZmZddlmZmZddlmZmZmZm Z ddl m Z edƒZ e ee fZe ee fZe eee fZedee gee fZGdd„deƒZdd d d d gZd S)é)ÚABCÚabstractmethod)ÚdatetimeÚ timedelta)ÚCallableÚOptionalÚTypeVarÚUnioné)ÚDisposableBaseÚ_TStateÚ SchedulerBasec@sÖeZdZdZdZeeedœdd„ƒƒZede e e e e dœdd „ƒZ edee e e e e d œd d „ƒZedee e e e e d œd d„ƒZeeeedœdd„ƒƒZeeeedœdd„ƒƒZeeeedœdd„ƒƒZdS)r zScheduler abstract base class.©)ÚreturncCstS)zôRepresents a notion of time for this scheduler. Tasks being scheduled on a scheduler will adhere to the time denoted by this property. Returns: The scheduler's current time, as a datetime instance. ©ÚNotImplemented)ÚselfrrúH/opt/alt/python38/lib/python3.8/site-packages/reactivex/abc/scheduler.pyÚnows zSchedulerBase.nowN)ÚactionÚstatercCstS)a!Schedules an action to be executed. Args: action: Action to be executed. state: [Optional] state to be given to the action function. Returns: The disposable object used to cancel the scheduled action (best effort). r)rrrrrrÚschedule$szSchedulerBase.schedule)ÚduetimerrrcCstS)auSchedules an action to be executed after duetime. Args: duetime: Relative time after which to execute the action. action: Action to be executed. state: [Optional] state to be given to the action function. Returns: The disposable object used to cancel the scheduled action (best effort). r©rrrrrrrÚschedule_relative5szSchedulerBase.schedule_relativecCstS)aoSchedules an action to be executed at duetime. Args: duetime: Absolute time at which to execute the action. action: Action to be executed. state: [Optional] state to be given to the action function. Returns: The disposable object used to cancel the scheduled action (best effort). rrrrrÚschedule_absoluteJszSchedulerBase.schedule_absolute)ÚvaluercCstS)aQConverts time value to seconds. This method handles both absolute (datetime) and relative (timedelta) values. If the argument is already a float, it is simply returned unchanged. Args: value: the time value to convert to seconds. Returns: The value converted to seconds. r©ÚclsrrrrÚ to_seconds_szSchedulerBase.to_secondscCstS)aTConverts time value to datetime. This method handles both absolute (float) and relative (timedelta) values. If the argument is already a datetime, it is simply returned unchanged. Args: value: the time value to convert to datetime. Returns: The value converted to datetime. rrrrrÚ to_datetimeoszSchedulerBase.to_datetimecCstS)aáConverts time value to timedelta. This method handles both absolute (datetime) and relative (float) values. If the argument is already a timedelta, it is simply returned unchanged. If the argument is an absolute time, the result value will be the timedelta since the epoch, January 1st, 1970, 00:00:00. Args: value: the time value to convert to timedelta. Returns: The value converted to timedelta. rrrrrÚ to_timedeltaszSchedulerBase.to_timedelta)N)N)N)Ú__name__Ú __module__Ú __qualname__Ú__doc__Ú __slots__ÚpropertyrrrÚScheduledActionr rr rÚ RelativeTimerÚ AbsoluteTimerÚ classmethodÚAbsoluteOrRelativeTimeÚfloatrr rr!rrrrr sJ ÿþüûüûr*r)r,r(N)ÚabcrrrrÚtypingrrrr Z disposabler r r-r*r)r,r(r Ú__all__rrrrÚs(    ÿÿû