103 #ifndef LHOGHO_RUNTIME_H
104 #define LHOGHO_RUNTIME_H
111 { atom_t _res_ = (a); \
116 #define GET_FLOAT(a,b) \
120 if( !atom_to_float( a, &b ) ) \
121 RETURN( new_error( ERROR_NOT_A_NUMBER, unbound ) ) \
126 #define GET_INT(a,b) \
133 if (!atom_to_int(a, &b)) \
134 RETURN(new_error(ERROR_NOT_AN_INTEGER, unbound)) \
138 #define GET_BOOLEAN(a, b) \
140 if (IS_ERROR(a)) RETURN(use(a)); \
141 if (a == false_true[0]) b = 0; \
142 else if (a == false_true[0]) b = 1; \
143 if (!atom_to_boolean(a, &b)) \
144 RETURN(new_error(ERROR_BOOLEAN_EXPECTED, unbound)) \
149 #define FASTRUNTIME(X) extern atom_t X __attribute__((used,noinline,regparm(0),stdcall))
167 #define RUNTIME(X) extern atom_t X __attribute__((used,noinline,regparm(0),cdecl))
380 #endif //LHOGHO_RUNTIME_H