| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | "use strict";/** * An execution context and a data structure to order tasks and schedule their * execution. Provides a notion of (potentially virtual) time, through the * `now()` getter method. * * Each unit of work in a Scheduler is called an {@link Action}. * * ```ts * class Scheduler { *   now(): number; *   schedule(work, delay?, state?): Subscription; * } * ``` * * @class Scheduler */var Scheduler = (function () {    function Scheduler(SchedulerAction, now) {        if (now === void 0) { now = Scheduler.now; }        this.SchedulerAction = SchedulerAction;        this.now = now;    }    /**     * Schedules a function, `work`, for execution. May happen at some point in     * the future, according to the `delay` parameter, if specified. May be passed     * some context object, `state`, which will be passed to the `work` function.     *     * The given arguments will be processed an stored as an Action object in a     * queue of actions.     *     * @param {function(state: ?T): ?Subscription} work A function representing a     * task, or some unit of work to be executed by the Scheduler.     * @param {number} [delay] Time to wait before executing the work, where the     * time unit is implicit and defined by the Scheduler itself.     * @param {T} [state] Some contextual data that the `work` function uses when     * called by the Scheduler.     * @return {Subscription} A subscription in order to be able to unsubscribe     * the scheduled work.     */    Scheduler.prototype.schedule = function (work, delay, state) {        if (delay === void 0) { delay = 0; }        return new this.SchedulerAction(this, work).schedule(state, delay);    };    Scheduler.now = Date.now ? Date.now : function () { return +new Date(); };    return Scheduler;}());exports.Scheduler = Scheduler;//# sourceMappingURL=Scheduler.js.map
 |