1(*
2    Copyright (c) 2013 David C.J. Matthews
3
4    This library is free software; you can redistribute it and/or
5    modify it under the terms of the GNU Lesser General Public
6    License as published by the Free Software Foundation; either
7    version 2.1 of the License, or (at your option) any later version.
8    
9    This library is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    Lesser General Public License for more details.
13    
14    You should have received a copy of the GNU Lesser General Public
15    License along with this library; if not, write to the Free Software
16    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17*)
18
19signature SymsetSig =
20sig
21  type symset;
22  type sys
23   
24  val inside: sys * symset -> bool;
25  
26  val ++ :symset * symset -> symset;  
27  val abortParse:   symset;
28  val ident:        symset;
29  val abstypeSy:    symset;
30  val andSy:        symset;
31  val andalsoSy:    symset;
32  val asSy:         symset;
33  val caseSy:       symset;
34  val datatypeSy:   symset;
35  val doSy:         symset;
36  val elseSy:       symset;
37  val endSy:        symset;
38  val exceptionSy:  symset;
39  val fnSy:         symset;
40  val funSy:        symset;
41  val handleSy:     symset;
42  val ifSy:         symset;
43  val inSy:         symset;
44  val infixSy:      symset;
45  val infixrSy:     symset;
46  val letSy:        symset;
47  val localSy:      symset;
48  val nonfixSy:     symset;
49  val ofSy:         symset;
50  val opSy:         symset;
51  val openSy:       symset;
52  val orelseSy:     symset;
53  val raiseSy:      symset;
54  val recSy:        symset;
55  val thenSy:       symset;
56  val typeSy:       symset;
57  val valSy:        symset;
58  val withSy:       symset;
59  val whileSy:      symset;
60  val leftParen:    symset;
61  val rightParen:   symset;
62  val leftBrack:    symset;
63  val rightBrack:   symset;
64  val comma:        symset;
65  val colon:        symset;
66  val semicolon:    symset;
67  val thickArrow:   symset;
68  val verticalBar:  symset;
69  val equalsSign:   symset;
70  val underline:    symset;
71  val typeIdent:    symset;
72  val stringConst:  symset;
73  val integerConst: symset;
74  val asterisk:     symset;
75  val arrow:        symset;
76  val realConst:    symset;
77  val wordConst:    symset;
78  val charConst:    symset;
79  val leftCurly:    symset;
80  val rightCurly:   symset;
81  val threeDots:    symset;
82  val colonGt:      symset;
83  val hashSign:     symset;
84  val structureSy:  symset;
85  val signatureSy:  symset;
86  val structSy:     symset;
87  val sigSy:        symset;
88  val sharingSy:    symset;
89  val functorSy:    symset;
90  val withtypeSy:   symset;
91  val eqtypeSy:     symset;
92  val includeSy:    symset;
93  val whereSy:      symset;
94  val othersy:      symset;
95  val empty:        symset;
96
97  val variableSys:        symset;
98  val constructorSys:     symset;
99  val startAtomicSys:     symset;
100  val startPatternSys:    symset;
101  val startMatchSys:      symset;
102  val startExpressionSys: symset;
103  val startDecSys:        symset;
104  val declarableVarSys:   symset;
105  val startTypeSys:       symset;
106  val startSigSys:        symset;
107  val startTopSys:        symset;
108end;
109
110