version 1.2, 2003/11/20 00:06:50 |
version 1.3, 2003/11/20 03:25:08 |
|
|
/* $OpenXM$ */ |
/* $OpenXM: OpenXM/src/kan96xx/Kan/yylex_polymake.h,v 1.2 2003/11/20 00:06:50 takayama Exp $ */ |
struct pmObject { |
struct pmObject { |
int tag; |
int tag; |
void *body; |
void *body; |
Line 10 typedef struct pmObject *pmObjectp ; |
|
Line 10 typedef struct pmObject *pmObjectp ; |
|
|
|
#define PMobject_str 1 |
#define PMobject_str 1 |
#define PMobject_list 2 |
#define PMobject_list 2 |
|
#define PMobject_tree 3 |
|
|
struct pmList { |
struct pmList { |
pmObjectp left; |
pmObjectp left; |
struct pmList *right; |
struct pmList *right; |
}; |
}; |
|
|
|
struct pmTree { |
|
char *nodeName; |
|
pmObjectp attrList; |
|
pmObjectp childs; |
|
}; |
|
|
pmObjectp pmNewStrObject(char *s); |
pmObjectp pmNewStrObject(char *s); |
pmObjectp pmNewListObject(pmObjectp a); |
pmObjectp pmNewListObject(pmObjectp a); |
pmObjectp pmCons(pmObjectp a,struct pmList *b); |
pmObjectp pmCons(pmObjectp a,struct pmList *b); |
|
int pmListLength(struct pmList *list); |
|
pmObjectp pmNewTreeObject(char *s); |
|
pmObjectp pmNewTreeObjecto(pmObjectp s); |
|
pmObjectp pmAddAttr(pmObjectp c,pmObjectp a); |
|
pmObjectp pmAddChild(pmObjectp c,pmObjectp a); |
void pmPrintObject(FILE *fp,pmObjectp a); |
void pmPrintObject(FILE *fp,pmObjectp a); |