OSDN Git Service

a3ffe66571c7664d62c660691e6b29ff477d50d5
[nysol/mining.git] / zdd / lib / SAPPOROBDD / app / VSOP / vsop.h
1 // VSOP - Header (v1.39)
2 // Shin-ichi MINATO (Nov. 22, 2013)
3
4 #define PROMPT "vsop> "
5 #define DOCUMENT "vsop.help"
6
7 int yyparse();
8
9 struct VarEntry;
10
11 class VarTable
12 {
13   int _used;
14   int _hashsize;
15   VarEntry* _wheel;
16   VarEntry** _index;
17
18   void Enlarge(void);
19   VarEntry* GetEntry(char *);
20 public:
21   VarTable(int size = 64);
22   ~VarTable(void);
23   int GetID(char *);
24   char* GetName(int);
25   int GetValue(int);
26   int GetGID(int);
27   void SetB(char *, int);
28   void SetB(char *, int, int);
29   void SetT(char *, int);
30   void SetT0(int, char *);
31   void SetT(char *, int, int);
32   int Used(void);
33 };
34
35 struct FuncEntry;
36 class CtoI;
37
38 class FuncTable
39 {
40   int _used;
41   int _hashsize;
42   FuncEntry* _wheel;
43
44   void Enlarge(void);
45   FuncEntry* GetEntry(char *);
46 public:
47   FuncTable(int size = 256);
48   ~FuncTable(void);
49   int CheckNew(char *);
50   CtoI& GetCtoI(char *);
51   void Set(char *, CtoI &);
52   int Used(void);
53 };
54
55 class BOut
56 {
57   short _column;
58 public:
59   BOut(void);
60   BOut& operator <<(const char *);
61   void Delimit(void);
62   void Return(void);
63 };
64
65 extern VarTable VTable;
66 extern FuncTable FTable;
67 extern BOut bout;
68
69 extern void yyerror(const char *);
70
71 extern int PrintCtoI(CtoI);
72 extern int PrintCtoI_16(CtoI);
73 extern int PrintDigital(CtoI);
74 extern int PrintCase(CtoI);
75 extern int MapAll(CtoI);
76 extern int MapSel(CtoI);
77
78 extern int PrintDecomp(CtoI);
79 extern int PrintDecompDot(CtoI);