111
|
1 /****************************************************************************
|
|
2 * *
|
|
3 * GNAT COMPILER COMPONENTS *
|
|
4 * *
|
|
5 * U R E A L P *
|
|
6 * *
|
|
7 * C Header File *
|
|
8 * *
|
|
9 * Copyright (C) 1992-2014, Free Software Foundation, Inc. *
|
|
10 * *
|
|
11 * GNAT is free software; you can redistribute it and/or modify it under *
|
|
12 * terms of the GNU General Public License as published by the Free Soft- *
|
|
13 * ware Foundation; either version 3, or (at your option) any later ver- *
|
|
14 * sion. GNAT is distributed in the hope that it will be useful, but WITH- *
|
|
15 * OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY *
|
|
16 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License *
|
|
17 * for more details. You should have received a copy of the GNU General *
|
|
18 * Public License distributed with GNAT; see file COPYING3. If not, go to *
|
|
19 * http://www.gnu.org/licenses for a complete copy of the license. *
|
|
20 * *
|
|
21 * GNAT was originally developed by the GNAT team at New York University. *
|
|
22 * Extensive contributions were provided by Ada Core Technologies Inc. *
|
|
23 * *
|
|
24 ****************************************************************************/
|
|
25
|
|
26 /* This file corresponds to the Ada package specification Urealp. It was
|
|
27 created manually from the files urealp.ads and urealp.adb. */
|
|
28
|
|
29 #ifdef __cplusplus
|
|
30 extern "C" {
|
|
31 #endif
|
|
32
|
|
33 /* Support for universal real arithmetic. */
|
|
34
|
|
35 #define Numerator urealp__numerator
|
|
36 extern Uint Numerator (Ureal);
|
|
37
|
|
38 #define Denominator urealp__denominator
|
|
39 extern Uint Denominator (Ureal);
|
|
40
|
|
41 #define Rbase urealp__rbase
|
|
42 extern Nat Rbase (Ureal);
|
|
43
|
|
44 #define Norm_Den urealp__norm_den
|
|
45 extern Uint Norm_Den (Ureal);
|
|
46
|
|
47 #define Norm_Num urealp__norm_num
|
|
48 extern Uint Norm_Num (Ureal);
|
|
49
|
|
50 #define UR_Is_Negative urealp__ur_is_negative
|
|
51 extern Boolean UR_Is_Negative (Ureal);
|
|
52
|
|
53 #define UR_Is_Zero urealp__ur_is_zero
|
|
54 extern Boolean UR_Is_Zero (Ureal);
|
|
55
|
|
56 enum Rounding_Mode {Floor = 0, Ceiling = 1, Round = 2, Round_Even = 3};
|
|
57
|
|
58 #define Machine eval_fat__machine
|
|
59 extern Ureal Machine (Entity_Id, Ureal, enum Rounding_Mode,
|
|
60 Node_Id);
|
|
61
|
|
62 #ifdef __cplusplus
|
|
63 }
|
|
64 #endif
|