1 /****************************************************************************
2  *                                                                          *
3  *                         GNAT COMPILER COMPONENTS                         *
4  *                                                                          *
5  *                               U R E A L P                                *
6  *                                                                          *
7  *                              C Header File                               *
8  *                                                                          *
9  *            Copyright (C) 1992-2011, 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 UR_Is_Negative urealp__ur_is_negative
45 extern Boolean UR_Is_Negative	(Ureal);
46 
47 #define UR_Is_Zero urealp__ur_is_zero
48 extern Boolean UR_Is_Zero	(Ureal);
49 
50 enum Rounding_Mode {Floor = 0, Ceiling = 1, Round = 2, Round_Even = 3};
51 
52 #define Machine eval_fat__machine
53 extern Ureal Machine		(Entity_Id, Ureal, enum Rounding_Mode,
54 				 Node_Id);
55 
56 #ifdef __cplusplus
57 }
58 #endif
59