=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/lib/defs.h,v retrieving revision 1.5 retrieving revision 1.8 diff -u -p -r1.5 -r1.8 --- OpenXM_contrib2/asir2000/lib/defs.h 2003/12/15 16:37:59 1.5 +++ OpenXM_contrib2/asir2000/lib/defs.h 2004/06/30 08:36:06 1.8 @@ -45,10 +45,11 @@ * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. * - * $OpenXM: OpenXM_contrib2/asir2000/lib/defs.h,v 1.4 2003/10/14 02:02:26 noro Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/lib/defs.h,v 1.7 2004/06/27 13:49:40 ohara Exp $ */ /* some useful macros */ +#define VOID -1 #define ZERO 0 #define NUM 1 #define POLY 2 @@ -71,6 +72,7 @@ #define V_PF 2 #define V_SR 3 +#define isvoid(a) (type(a)==VOID) #define isnum(a) (type(a)==NUM) #define ispoly(a) (type(a)==POLY) #define israt(a) (type(a)==RAT) @@ -80,6 +82,8 @@ #define isstr(a) (type(a)==STR) #define isstruct(A) (type(A)==STRUCT) #define isdpoly(a) (type(a)==DPOLY) + +#define isnum_int(a) ((a)==0 || (type((a))==NUM && ntype((a))==O_Q && dn((a))==1)) #define FIRST(L) (car(L)) #define SECOND(L) (car(cdr(L)))