Annotation of OpenXM/src/kan96xx/Kan/yylex_polymake.h, Revision 1.6
1.6 ! takayama 1: /* $OpenXM: OpenXM/src/kan96xx/Kan/yylex_polymake.h,v 1.5 2003/11/20 07:56:00 takayama Exp $ */
1.1 takayama 2: struct pmObject {
3: int tag;
4: void *body;
5: };
6: typedef struct pmObject *pmObjectp ;
1.6 ! takayama 7: extern pmObjectp PMlval; /* Yacc on FreeBSD 4.8 does not generate this declaration in yy_polymake.tab.h
! 8: Yacc on Debian potato generates this declaration in yy_poymake.tab.h
! 9: No problem with makeing two extern declarations. */
! 10:
1.1 takayama 11: #define YYSTYPE pmObjectp
12: #define PM_unknown -2
13: #define PM_noToken -1
14:
15: #define PMobject_str 1
16: #define PMobject_list 2
1.3 takayama 17: #define PMobject_tree 3
1.1 takayama 18:
19: struct pmList {
20: pmObjectp left;
21: struct pmList *right;
22: };
23:
1.3 takayama 24: struct pmTree {
25: char *nodeName;
26: pmObjectp attrList;
27: pmObjectp childs;
28: };
29:
1.4 takayama 30: int pmSetS(char *s);
31: int pmPreprocess(void);
32: char *pmPutstr(int c);
1.1 takayama 33: pmObjectp pmNewStrObject(char *s);
34: pmObjectp pmNewListObject(pmObjectp a);
35: pmObjectp pmCons(pmObjectp a,struct pmList *b);
1.3 takayama 36: int pmListLength(struct pmList *list);
37: pmObjectp pmNewTreeObject(char *s);
38: pmObjectp pmNewTreeObjecto(pmObjectp s);
39: pmObjectp pmAddAttr(pmObjectp c,pmObjectp a);
40: pmObjectp pmAddChild(pmObjectp c,pmObjectp a);
1.1 takayama 41: void pmPrintObject(FILE *fp,pmObjectp a);
1.5 takayama 42: char *pmObjectToStr(pmObjectp p);
43: char *pmObjectToStr_aux(pmObjectp p);
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>