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