diff options
author | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2001-09-23 21:25:26 +0000 |
---|---|---|
committer | Mikael Djurfeldt <djurfeldt@nada.kth.se> | 2001-09-23 21:25:26 +0000 |
commit | 581ded70a3757201d3c18ecdff04c6c1ca1edabe (patch) | |
tree | c0da6213bc087e8e8247d445d0fee37de5051fc2 /libguile/validate.h | |
parent | 5437598b36938332d3a0813b4311ec7f700a8db7 (diff) | |
download | guile-581ded70a3757201d3c18ecdff04c6c1ca1edabe.tar.gz |
* validate.h (SCM_NUM2FLOAT, SCM_NUM2DOUBLE,
SCM_VALIDATE_FLOAT_COPY, SCM_VALIDATE_DOUBLE_COPY): New
macros. (The NUM names might soon change.)
* numbers.h: Added missing declarations.
Diffstat (limited to 'libguile/validate.h')
-rw-r--r-- | libguile/validate.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libguile/validate.h b/libguile/validate.h index ddbf98a48..f7b7aec53 100644 --- a/libguile/validate.h +++ b/libguile/validate.h @@ -116,6 +116,12 @@ #define SCM_NUM2ULONG_LONG_DEF(pos, arg, def) \ (SCM_UNBNDP (arg) ? def : scm_num2ulong_long (arg, pos, FUNC_NAME)) +#define SCM_NUM2FLOAT(pos, arg) \ + (scm_num2float (arg, pos, FUNC_NAME)) + +#define SCM_NUM2DOUBLE(pos, arg) \ + (scm_num2double (arg, pos, FUNC_NAME)) + #define SCM_OUT_OF_RANGE(pos, arg) \ do { scm_out_of_range_pos (FUNC_NAME, arg, SCM_MAKINUM (pos)); } while (0) @@ -232,6 +238,16 @@ cvar = SCM_NUM2LONG (pos, k); \ } while (0) +#define SCM_VALIDATE_FLOAT_COPY(pos, k, cvar) \ + do { \ + cvar = SCM_NUM2FLOAT (pos, k); \ + } while (0) + +#define SCM_VALIDATE_DOUBLE_COPY(pos, k, cvar) \ + do { \ + cvar = SCM_NUM2DOUBLE (pos, k); \ + } while (0) + #define SCM_VALIDATE_BIGINT(pos, k) SCM_MAKE_VALIDATE (pos, k, BIGP) #define SCM_VALIDATE_INUM_MIN(pos, k, min) \ |