| 
									
										
										
										
											1991-02-19 12:39:46 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1990-10-14 12:07:46 +00:00
										 |  |  | /* Float object interface */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2024-07-19 11:06:02 +03:00
										 |  |  | PyFloatObject represents a (double precision) floating-point number. | 
					
						
							| 
									
										
										
										
											1990-10-14 12:07:46 +00:00
										 |  |  | */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-07-09 00:20:36 +00:00
										 |  |  | #ifndef Py_FLOATOBJECT_H
 | 
					
						
							|  |  |  | #define Py_FLOATOBJECT_H
 | 
					
						
							|  |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | extern "C" { | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2002-08-12 07:21:58 +00:00
										 |  |  | PyAPI_DATA(PyTypeObject) PyFloat_Type; | 
					
						
							| 
									
										
										
										
											1990-10-14 12:07:46 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-08-29 15:45:32 +00:00
										 |  |  | #define PyFloat_Check(op) PyObject_TypeCheck(op, &PyFloat_Type)
 | 
					
						
							| 
									
										
										
										
											2022-06-16 13:49:43 +02:00
										 |  |  | #define PyFloat_CheckExact(op) Py_IS_TYPE((op), &PyFloat_Type)
 | 
					
						
							| 
									
										
										
										
											1990-10-14 12:07:46 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-25 01:32:57 +01:00
										 |  |  | #define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN)
 | 
					
						
							| 
									
										
										
										
											2008-04-19 00:31:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | #define Py_RETURN_INF(sign)                          \
 | 
					
						
							|  |  |  |     do {                                             \ | 
					
						
							|  |  |  |         if (copysign(1., sign) == 1.) {              \ | 
					
						
							| 
									
										
										
										
											2024-11-02 01:04:31 +03:00
										 |  |  |             return PyFloat_FromDouble(Py_INFINITY);  \ | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  |         }                                            \ | 
					
						
							|  |  |  |         else {                                       \ | 
					
						
							| 
									
										
										
										
											2024-11-02 01:04:31 +03:00
										 |  |  |             return PyFloat_FromDouble(-Py_INFINITY); \ | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  |         }                                            \ | 
					
						
							| 
									
										
										
										
											2011-09-29 00:58:57 +03:00
										 |  |  |     } while(0) | 
					
						
							| 
									
										
										
										
											2008-04-19 00:31:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-12-01 12:22:32 +00:00
										 |  |  | PyAPI_FUNC(double) PyFloat_GetMax(void); | 
					
						
							|  |  |  | PyAPI_FUNC(double) PyFloat_GetMin(void); | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | PyAPI_FUNC(PyObject*) PyFloat_GetInfo(void); | 
					
						
							| 
									
										
										
										
											2007-12-01 12:22:32 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-03-18 18:35:15 +00:00
										 |  |  | /* Return Python float from string PyObject. */ | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | PyAPI_FUNC(PyObject*) PyFloat_FromString(PyObject*); | 
					
						
							| 
									
										
										
										
											2001-05-08 15:19:57 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | /* Return Python float from C double. */ | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | PyAPI_FUNC(PyObject*) PyFloat_FromDouble(double); | 
					
						
							| 
									
										
										
										
											1990-10-14 12:07:46 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-05-08 15:19:57 +00:00
										 |  |  | /* Extract C double from Python float.  The macro version trades safety for
 | 
					
						
							|  |  |  |    speed. */ | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | PyAPI_FUNC(double) PyFloat_AsDouble(PyObject*); | 
					
						
							| 
									
										
										
										
											1993-07-28 09:05:47 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-12-03 20:14:31 +00:00
										 |  |  | #ifndef Py_LIMITED_API
 | 
					
						
							| 
									
										
										
										
											2021-10-14 23:41:06 +02:00
										 |  |  | #  define Py_CPYTHON_FLOATOBJECT_H
 | 
					
						
							|  |  |  | #  include "cpython/floatobject.h"
 | 
					
						
							|  |  |  | #  undef Py_CPYTHON_FLOATOBJECT_H
 | 
					
						
							|  |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2008-05-30 18:10:19 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1993-07-28 09:05:47 +00:00
										 |  |  | #ifdef __cplusplus
 | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | #endif /* !Py_FLOATOBJECT_H */
 |