core: eq_p: Prepare for M2-Planet.

* src/mes.c (eq_p): Prepare for M2-Planet.
This commit is contained in:
Jan Nieuwenhuizen 2019-10-24 12:49:52 +02:00
parent 654aa249d6
commit da899e1c24
No known key found for this signature in database
GPG Key ID: F3C1A0D9C1D65273
1 changed files with 24 additions and 6 deletions

View File

@ -117,13 +117,31 @@ null_p (SCM x)
SCM
eq_p (SCM x, SCM y)
{
if (x == y
|| ((TYPE (x) == TKEYWORD && TYPE (y) == TKEYWORD
&& string_equal_p (x, y) == cell_t))
|| (TYPE (x) == TCHAR && TYPE (y) == TCHAR
&& VALUE (x) == VALUE (y))
|| (TYPE (x) == TNUMBER && TYPE (y) == TNUMBER && VALUE (x) == VALUE (y)))
if (x == y)
return cell_t;
int t = TYPE (x);
if (t == TKEYWORD)
{
if (TYPE (y) == TKEYWORD)
return string_equal_p (x, y);
return cell_f;
}
if (t == TCHAR)
{
if (TYPE (y) != TCHAR)
return cell_f;
if (VALUE (x) == VALUE (y))
return cell_t;
return cell_f;
}
if (t == TNUMBER)
{
if (TYPE (y) != TNUMBER)
return cell_f;
if (VALUE (x) == VALUE (y))
return cell_t;
return cell_f;
}
return cell_f;
}