[BACK]Return to yylex_polymake.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / trans

File: [local] / OpenXM / src / kan96xx / trans / yylex_polymake.h (download)

Revision 1.1, Mon Nov 24 02:33:39 2003 UTC (20 years, 6 months ago) by takayama
Branch: MAIN
CVS Tags: R_1_3_1-2, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, KNOPPIX_2006, DEB_REL_1_2_3-9

Moved data converstion modules into kan96xx/trans.

/* $OpenXM: OpenXM/src/kan96xx/trans/yylex_polymake.h,v 1.1 2003/11/24 02:33:39 takayama Exp $ */
struct pmObject {
  int tag;
  void *body;
};
typedef struct pmObject *pmObjectp ;
extern pmObjectp PMlval;  /* Yacc on FreeBSD 4.8 does not generate this declaration in yy_polymake.tab.h
                             Yacc on Debian potato generates this declaration in yy_poymake.tab.h
                             No problem with makeing two extern declarations. */

#define YYSTYPE pmObjectp
#define PM_unknown -2
#define PM_noToken -1

#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);