=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/Attic/yylex_polymake.h,v retrieving revision 1.2 retrieving revision 1.5 diff -u -p -r1.2 -r1.5 --- OpenXM/src/kan96xx/Kan/Attic/yylex_polymake.h 2003/11/20 00:06:50 1.2 +++ OpenXM/src/kan96xx/Kan/Attic/yylex_polymake.h 2003/11/20 07:56:00 1.5 @@ -1,4 +1,4 @@ -/* $OpenXM$ */ +/* $OpenXM: OpenXM/src/kan96xx/Kan/yylex_polymake.h,v 1.4 2003/11/20 06:04:04 takayama Exp $ */ struct pmObject { int tag; void *body; @@ -10,13 +10,30 @@ typedef struct pmObject *pmObjectp ; #define PMobject_str 1 #define PMobject_list 2 +#define PMobject_tree 3 struct pmList { pmObjectp left; struct pmList *right; }; +struct pmTree { + char *nodeName; + pmObjectp attrList; + pmObjectp childs; +}; + +int pmSetS(char *s); +int pmPreprocess(void); +char *pmPutstr(int c); pmObjectp pmNewStrObject(char *s); pmObjectp pmNewListObject(pmObjectp a); 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); +char *pmObjectToStr(pmObjectp p); +char *pmObjectToStr_aux(pmObjectp p);