Guile에 scm_assert_smob_type
함수 가 있다는 것을 알고 있지만 부울을 반환한다고 믿지 않습니다.
나는 다음과 같은 것을 할 수 있기를 원합니다.
if (type(smob) == int_smob)
{
int_foo(smob);
}
else if (type(smob) == string_smob)
{
string_foo(smob);
}
힌트에 대한 scm_assert_smob_type
의 정의 를 확인할 수 있습니다 .
void
scm_assert_smob_type (scm_t_bits tag, SCM val)
{
if (!SCM_SMOB_PREDICATE (tag, val))
scm_wrong_type_arg_msg (NULL, 0, val, scm_smobs[SCM_TC2SMOBNUM(tag)].name);
}
보시다시피 SCM_SMOB_PREDICATE
부울을 반환하는 것을 활용 합니다. 매크로는 공용이며 <smob.h>
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다