You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
689 B
Lua
23 lines
689 B
Lua
local util = require "rx.util"
|
|
|
|
--- @class ImmediateScheduler
|
|
-- @description Schedules Observables by running all operations immediately.
|
|
local ImmediateScheduler = {}
|
|
ImmediateScheduler.__index = ImmediateScheduler
|
|
ImmediateScheduler.__tostring = util.constant("ImmediateScheduler")
|
|
|
|
--- Creates a new ImmediateScheduler.
|
|
-- @returns {ImmediateScheduler}
|
|
function ImmediateScheduler.create()
|
|
return setmetatable({}, ImmediateScheduler)
|
|
end
|
|
|
|
--- Schedules a function to be run on the scheduler. It is executed immediately.
|
|
-- @arg {function} action - The function to execute.
|
|
function ImmediateScheduler:schedule(action)
|
|
local _ = self
|
|
action()
|
|
end
|
|
|
|
return ImmediateScheduler
|