File : a-taster-raven.ads


   1 ------------------------------------------------------------------------------
   2 --                                                                          --
   3 --                         GNAT RUN-TIME COMPONENTS                         --
   4 --                                                                          --
   5 --                 A D A . T A S K _ T E R M I N A T I O N                  --
   6 --                                                                          --
   7 --                                 S p e c                                  --
   8 --                                                                          --
   9 --          Copyright (C) 2005-2014, Free Software Foundation, Inc.         --
  10 --                                                                          --
  11 -- This specification is derived from the Ada Reference Manual for use with --
  12 -- GNAT. The copyright notice above, and the license provisions that follow --
  13 -- apply solely to the  contents of the part following the private keyword. --
  14 --                                                                          --
  15 -- GNAT was originally developed  by the GNAT team at  New York University. --
  16 -- Extensive contributions were provided by Ada Core Technologies Inc.      --
  17 --                                                                          --
  18 ------------------------------------------------------------------------------
  19 
  20 --  This is a simplified version of this package to be used in when the
  21 --  Ravenscar profile and there are no exception handlers present (either of
  22 --  the restrictions No_Exception_Handlers or No_Exception_Propagation are in
  23 --  effect). This means that the only task termination cause that need to be
  24 --  taken into account is normal task termination (abort is not allowed by
  25 --  the Ravenscar profile and the restricted exception support does not
  26 --  include Exception_Occurrence).
  27 
  28 with Ada.Task_Identification;
  29 
  30 package Ada.Task_Termination is
  31    pragma Preelaborate (Task_Termination);
  32 
  33    type Termination_Handler is access
  34      protected procedure (T : Ada.Task_Identification.Task_Id);
  35    --  ??? This type is not conformant with the RM, as cause and exception
  36    --  occurrence are missing. Adding cause would be easy, but in the sfp
  37    --  profile there is no declaration of Exception_Occurrence.
  38 
  39    procedure Set_Dependents_Fallback_Handler
  40      (Handler : Termination_Handler);
  41    function Current_Task_Fallback_Handler return Termination_Handler;
  42 
  43 end Ada.Task_Termination;