00001
00036 #ifndef YASM_FLOATNUM_H
00037 #define YASM_FLOATNUM_H
00038
00039 #ifndef YASM_LIB_DECL
00040 #define YASM_LIB_DECL
00041 #endif
00042
00044 YASM_LIB_DECL
00045 void yasm_floatnum_initialize(void);
00046
00048 YASM_LIB_DECL
00049 void yasm_floatnum_cleanup(void);
00050
00056 YASM_LIB_DECL
00057 yasm_floatnum *yasm_floatnum_create(const char *str);
00058
00063 YASM_LIB_DECL
00064 yasm_floatnum *yasm_floatnum_copy(const yasm_floatnum *flt);
00065
00069 YASM_LIB_DECL
00070 void yasm_floatnum_destroy( yasm_floatnum *flt);
00071
00080 YASM_LIB_DECL
00081 int yasm_floatnum_calc(yasm_floatnum *acc, yasm_expr_op op,
00082 yasm_floatnum *operand);
00083
00091 YASM_LIB_DECL
00092 int yasm_floatnum_get_int(const yasm_floatnum *flt,
00093 unsigned long *ret_val);
00094
00112 YASM_LIB_DECL
00113 int yasm_floatnum_get_sized(const yasm_floatnum *flt, unsigned char *ptr,
00114 size_t destsize, size_t valsize, size_t shift,
00115 int bigendian, int warn);
00116
00125 YASM_LIB_DECL
00126 int yasm_floatnum_check_size(const yasm_floatnum *flt, size_t size);
00127
00132 YASM_LIB_DECL
00133 void yasm_floatnum_print(const yasm_floatnum *flt, FILE *f);
00134
00135 #endif