mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-01 20:30:28 +02:00
(scm_is_true, scm_is_false, scm_from_bool, scm_to_bool): New.
This commit is contained in:
parent
e4e249c1b8
commit
3a684cc6c9
2 changed files with 23 additions and 0 deletions
|
@ -45,7 +45,22 @@ SCM_DEFINE (scm_boolean_p, "boolean?", 1, 0, 0,
|
||||||
}
|
}
|
||||||
#undef FUNC_NAME
|
#undef FUNC_NAME
|
||||||
|
|
||||||
|
int
|
||||||
|
scm_is_bool (SCM x)
|
||||||
|
{
|
||||||
|
return scm_is_eq (x, SCM_BOOL_F) || scm_is_eq (SCM_BOOL_T);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
scm_to_bool (SCM x)
|
||||||
|
{
|
||||||
|
if (scm_is_eq (x, SCM_BOOL_F))
|
||||||
|
return 0;
|
||||||
|
else if (scm_is_eq (x, SCM_BOOL_T))
|
||||||
|
return 1;
|
||||||
|
else
|
||||||
|
scm_wrong_type_arg (NULL, 0, x);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
scm_init_boolean ()
|
scm_init_boolean ()
|
||||||
|
|
|
@ -47,10 +47,18 @@
|
||||||
^ (SCM_UNPACK (SCM_BOOL_T) \
|
^ (SCM_UNPACK (SCM_BOOL_T) \
|
||||||
^ SCM_UNPACK (SCM_BOOL_F))))
|
^ SCM_UNPACK (SCM_BOOL_F))))
|
||||||
|
|
||||||
|
#define scm_is_false(x) scm_is_eq ((x), SCM_BOOL_F)
|
||||||
|
#define scm_is_true(x) !scm_is_false (x)
|
||||||
|
|
||||||
|
SCM_API int scm_is_bool(x);
|
||||||
|
#define scm_from_bool(x) ((f) ? SCM_BOOL_T : SCM_BOOL_F)
|
||||||
|
SCM_API int scm_to_bool (SCM x);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
SCM_API SCM scm_not (SCM x);
|
SCM_API SCM scm_not (SCM x);
|
||||||
SCM_API SCM scm_boolean_p (SCM obj);
|
SCM_API SCM scm_boolean_p (SCM obj);
|
||||||
|
|
||||||
SCM_API void scm_init_boolean (void);
|
SCM_API void scm_init_boolean (void);
|
||||||
|
|
||||||
#endif /* SCM_BOOLEAN_H */
|
#endif /* SCM_BOOLEAN_H */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue