rxada_0.1.0_6ff779c7/src/priv/rx-dispatchers-immediate.ads

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
package Rx.Dispatchers.Immediate is

   use type Ada.Calendar.Time;

   type Dispatcher is limited new Dispatchers.Dispatcher with private;

   --  Schedule a code to be run at a certain point from now, in a certain Dispatcher (thread)
   overriding
   procedure Schedule (Where : in out Dispatcher;
                       What  : Runnable'Class;
                       Time  : Ada.Calendar.Time := Ada.Calendar.Clock)
     with Pre => Time <= Ada.Calendar.Clock or
                 raise Constraint_Error with "Future scheduling in immediate scheduler not allowed";

private

   type Dispatcher is limited new Dispatchers.Dispatcher with null record;

end Rx.Dispatchers.Immediate;