1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
module HTTPX
class Timers
type callback = ^() -> void
@intervals: Array[Interval]
@next_interval_at: Float
def after: (Numeric interval_in_secs, ^() -> void) -> Timer
| (Numeric interval_in_secs) { () -> void } -> Timer
def wait_interval: () -> Numeric?
def fire: (?TimeoutError error) -> void
def initialize: () -> void
private
def drop_elapsed!: (Numeric elapsed_time) -> void
class Interval
include Comparable
attr_reader interval: Numeric
@callbacks: Array[callback]
def to_f: () -> Float
def <<: (callback) -> void
def delete: (callback) -> void
def elapse: (Numeric elapsed) -> Numeric
def elapsed?: (?Numeric elapsed_time) -> bool
def no_callbacks?: () -> bool
private
def initialize: (Numeric interval) -> void
end
class Timer
@interval: Interval
@callback: callback
def initialize: (Interval interval, callback callback) -> void
def cancel: () -> void
end
end
end
|