summaryrefslogtreecommitdiff
path: root/libguile/validate.h
diff options
context:
space:
mode:
authorMikael Djurfeldt <djurfeldt@nada.kth.se>2001-10-12 08:55:05 +0000
committerMikael Djurfeldt <djurfeldt@nada.kth.se>2001-10-12 08:55:05 +0000
commit68665a970864f16cb9e1a19411ab11dbf2ae138c (patch)
treed5e6f0ba78393769b7ee53f25443e2a786a46a4a /libguile/validate.h
parentd5cf5324a3a9c8f0202d1bd49aacc98bbe331f55 (diff)
downloadguile-68665a970864f16cb9e1a19411ab11dbf2ae138c.tar.gz
* validate.h (SCM_VALIDATE_DOUBLE_DEF_COPY): New macro.
Diffstat (limited to 'libguile/validate.h')
-rw-r--r--libguile/validate.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/libguile/validate.h b/libguile/validate.h
index f7b7aec53..21aadbe57 100644
--- a/libguile/validate.h
+++ b/libguile/validate.h
@@ -293,6 +293,19 @@
} \
} while (0)
+#define SCM_VALIDATE_DOUBLE_DEF_COPY(pos, k, default, cvar) \
+ do { \
+ if (SCM_UNBNDP (k)) \
+ { \
+ k = scm_make_real (default); \
+ cvar = default; \
+ } \
+ else \
+ { \
+ cvar = SCM_NUM2DOUBLE (pos, k); \
+ } \
+ } while (0)
+
/* [low,high) */
#define SCM_VALIDATE_INUM_RANGE(pos,k,low,high) \
do { SCM_ASSERT(SCM_INUMP(k), k, pos, FUNC_NAME); \