1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT RUNTIME COMPONENTS                          --
4--                                                                          --
5--            ADA.NUMERICS.GENERIC_COMPLEX_ELEMENTARY_FUNCTIONS             --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9-- This specification is adapted from the Ada Reference Manual for use with --
10-- GNAT.  In accordance with the copyright of that document, you can freely --
11-- copy and modify this specification,  provided that if you redistribute a --
12-- modified version,  any changes that you have made are clearly indicated. --
13--                                                                          --
14------------------------------------------------------------------------------
15
16with Ada.Numerics.Generic_Complex_Types;
17generic
18   with package Complex_Types is new Ada.Numerics.Generic_Complex_Types (<>);
19   use Complex_Types;
20
21package Ada.Numerics.Generic_Complex_Elementary_Functions is
22   pragma Pure (Ada.Numerics.Generic_Complex_Elementary_Functions);
23
24   function Sqrt (X : Complex)   return Complex;
25
26   function Log  (X : Complex)   return Complex;
27
28   function Exp  (X : Complex)   return Complex;
29   function Exp  (X : Imaginary) return Complex;
30
31   function "**" (Left : Complex;   Right : Complex)   return Complex;
32   function "**" (Left : Complex;   Right : Real'Base) return Complex;
33   function "**" (Left : Real'Base; Right : Complex)   return Complex;
34
35   function Sin (X : Complex) return Complex;
36   function Cos (X : Complex) return Complex;
37   function Tan (X : Complex) return Complex;
38   function Cot (X : Complex) return Complex;
39
40   function Arcsin (X : Complex) return Complex;
41   function Arccos (X : Complex) return Complex;
42   function Arctan (X : Complex) return Complex;
43   function Arccot (X : Complex) return Complex;
44
45   function Sinh (X : Complex) return Complex;
46   function Cosh (X : Complex) return Complex;
47   function Tanh (X : Complex) return Complex;
48   function Coth (X : Complex) return Complex;
49
50   function Arcsinh (X : Complex) return Complex;
51   function Arccosh (X : Complex) return Complex;
52   function Arctanh (X : Complex) return Complex;
53   function Arccoth (X : Complex) return Complex;
54
55end Ada.Numerics.Generic_Complex_Elementary_Functions;
56