simple-graph-query 1.0.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +96 -51
- package/dist/ForgeExprEvaluator.d.ts +61 -0
- package/dist/ForgeExprFreeVariableFinder.d.ts +45 -0
- package/dist/errorListener.d.ts +4 -0
- package/dist/forge-antlr/ForgeLexer.d.ts +134 -0
- package/dist/forge-antlr/ForgeListener.d.ts +942 -0
- package/dist/forge-antlr/ForgeListenerImpl.d.ts +127 -0
- package/dist/forge-antlr/ForgeParser.d.ts +1377 -0
- package/dist/forge-antlr/ForgeSyntaxConstructs.d.ts +86 -0
- package/dist/forge-antlr/ForgeVisitor.d.ts +605 -0
- package/dist/index.d.ts +17 -0
- package/dist/simple-graph-query.bundle.js +60984 -0
- package/dist/types.d.ts +26 -0
- package/package.json +56 -14
- package/dist/bundle.js +0 -1
- package/dist/evaluator.js +0 -180
- package/dist/index.js +0 -23
- package/dist/interface.js +0 -2
- package/dist/parser.js +0 -11
- package/dist/types/evaluator.d.ts +0 -12
- package/dist/types/index.d.ts +0 -2
- package/dist/types/interface.d.ts +0 -86
- package/dist/types/parser.d.ts +0 -2
- package/dist/types/types.d.ts +0 -18
- package/dist/types.js +0 -2
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
export declare abstract class SyntaxNode {
|
|
2
|
+
startRow: number;
|
|
3
|
+
startColumn: number;
|
|
4
|
+
endRow: number;
|
|
5
|
+
endColumn: number;
|
|
6
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number);
|
|
7
|
+
}
|
|
8
|
+
declare class Block extends SyntaxNode {
|
|
9
|
+
statements: SyntaxNode[];
|
|
10
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, statements: SyntaxNode[]);
|
|
11
|
+
}
|
|
12
|
+
declare class Sig extends SyntaxNode {
|
|
13
|
+
name: string;
|
|
14
|
+
body?: Block | undefined;
|
|
15
|
+
inheritsFrom?: string | undefined;
|
|
16
|
+
annotation?: string | undefined;
|
|
17
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, name: string, body?: Block | undefined, inheritsFrom?: string | undefined, // This could be 'SIG'. We are just ignoring this for now.
|
|
18
|
+
annotation?: string | undefined);
|
|
19
|
+
}
|
|
20
|
+
declare class Expr extends SyntaxNode {
|
|
21
|
+
expr: string;
|
|
22
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, expr: string);
|
|
23
|
+
}
|
|
24
|
+
declare class Predicate extends SyntaxNode {
|
|
25
|
+
name: string;
|
|
26
|
+
params?: Block | undefined;
|
|
27
|
+
body?: Block | undefined;
|
|
28
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, name: string, params?: Block | undefined, // FOr now, just a location block. We should change this as we get as things get more sophisticated.
|
|
29
|
+
body?: Block | undefined);
|
|
30
|
+
}
|
|
31
|
+
declare class Test extends SyntaxNode {
|
|
32
|
+
name: string;
|
|
33
|
+
check: string;
|
|
34
|
+
body?: Block | undefined;
|
|
35
|
+
bounds?: string | undefined;
|
|
36
|
+
scope?: string | undefined;
|
|
37
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, name: string, check: string, body?: Block | undefined, bounds?: string | undefined, scope?: string | undefined);
|
|
38
|
+
}
|
|
39
|
+
declare class AssertionTest extends SyntaxNode {
|
|
40
|
+
pred: string;
|
|
41
|
+
prop: Expr;
|
|
42
|
+
check: string;
|
|
43
|
+
bounds?: string | undefined;
|
|
44
|
+
scope?: string | undefined;
|
|
45
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, pred: string, prop: Expr, check: string, bounds?: string | undefined, scope?: string | undefined);
|
|
46
|
+
}
|
|
47
|
+
declare class QuantifiedAssertionTest extends SyntaxNode {
|
|
48
|
+
pred: string;
|
|
49
|
+
prop: Expr;
|
|
50
|
+
check: string;
|
|
51
|
+
disj?: boolean | undefined;
|
|
52
|
+
quantDecls?: Block | undefined;
|
|
53
|
+
bounds?: string | undefined;
|
|
54
|
+
scope?: string | undefined;
|
|
55
|
+
predArgs?: Block | undefined;
|
|
56
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, pred: string, prop: Expr, check: string, disj?: boolean | undefined, quantDecls?: Block | undefined, bounds?: string | undefined, scope?: string | undefined, predArgs?: Block | undefined);
|
|
57
|
+
}
|
|
58
|
+
declare class Example extends SyntaxNode {
|
|
59
|
+
name: string;
|
|
60
|
+
testExpr: Block;
|
|
61
|
+
bounds: Block;
|
|
62
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, name: string, testExpr: Block, bounds: Block);
|
|
63
|
+
}
|
|
64
|
+
declare class Function extends SyntaxNode {
|
|
65
|
+
name: string;
|
|
66
|
+
params?: Block | undefined;
|
|
67
|
+
body?: Block | undefined;
|
|
68
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, name: string, params?: Block | undefined, // FOr now, just a location block. We should change this as we get as things get more sophisticated.
|
|
69
|
+
body?: Block | undefined);
|
|
70
|
+
}
|
|
71
|
+
declare class SatisfiabilityAssertionTest extends SyntaxNode {
|
|
72
|
+
exp: Expr;
|
|
73
|
+
check: string;
|
|
74
|
+
bounds?: string | undefined;
|
|
75
|
+
scope?: string | undefined;
|
|
76
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, exp: Expr, check: string, bounds?: string | undefined, scope?: string | undefined);
|
|
77
|
+
}
|
|
78
|
+
declare class ConsistencyAssertionTest extends SyntaxNode {
|
|
79
|
+
pred: string;
|
|
80
|
+
prop: Expr;
|
|
81
|
+
consistent: boolean;
|
|
82
|
+
bounds?: string | undefined;
|
|
83
|
+
scope?: string | undefined;
|
|
84
|
+
constructor(startRow: number, startColumn: number, endRow: number, endColumn: number, pred: string, prop: Expr, consistent: boolean, bounds?: string | undefined, scope?: string | undefined);
|
|
85
|
+
}
|
|
86
|
+
export { Block, Sig, Predicate, Function, Test, AssertionTest, QuantifiedAssertionTest, Example, SatisfiabilityAssertionTest, ConsistencyAssertionTest, Expr };
|
|
@@ -0,0 +1,605 @@
|
|
|
1
|
+
import { ParseTreeVisitor } from "antlr4ts/tree/ParseTreeVisitor";
|
|
2
|
+
import { PredDeclContext } from "./ForgeParser";
|
|
3
|
+
import { ParseExprContext } from "./ForgeParser";
|
|
4
|
+
import { AlloyModuleContext } from "./ForgeParser";
|
|
5
|
+
import { ImportDeclContext } from "./ForgeParser";
|
|
6
|
+
import { ParagraphContext } from "./ForgeParser";
|
|
7
|
+
import { SigDeclContext } from "./ForgeParser";
|
|
8
|
+
import { SigExtContext } from "./ForgeParser";
|
|
9
|
+
import { MultContext } from "./ForgeParser";
|
|
10
|
+
import { ArrowMultContext } from "./ForgeParser";
|
|
11
|
+
import { HelperMultContext } from "./ForgeParser";
|
|
12
|
+
import { ParaDeclContext } from "./ForgeParser";
|
|
13
|
+
import { QuantDeclContext } from "./ForgeParser";
|
|
14
|
+
import { ArrowDeclContext } from "./ForgeParser";
|
|
15
|
+
import { PredTypeContext } from "./ForgeParser";
|
|
16
|
+
import { FunDeclContext } from "./ForgeParser";
|
|
17
|
+
import { ParaDeclsContext } from "./ForgeParser";
|
|
18
|
+
import { AssertDeclContext } from "./ForgeParser";
|
|
19
|
+
import { CmdDeclContext } from "./ForgeParser";
|
|
20
|
+
import { TestDeclContext } from "./ForgeParser";
|
|
21
|
+
import { TestExpectDeclContext } from "./ForgeParser";
|
|
22
|
+
import { TestBlockContext } from "./ForgeParser";
|
|
23
|
+
import { ScopeContext } from "./ForgeParser";
|
|
24
|
+
import { TypescopeContext } from "./ForgeParser";
|
|
25
|
+
import { ConstContext } from "./ForgeParser";
|
|
26
|
+
import { SatisfiabilityDeclContext } from "./ForgeParser";
|
|
27
|
+
import { QuantifiedPropertyDeclContext } from "./ForgeParser";
|
|
28
|
+
import { PropertyDeclContext } from "./ForgeParser";
|
|
29
|
+
import { ConsistencyDeclContext } from "./ForgeParser";
|
|
30
|
+
import { TestSuiteDeclContext } from "./ForgeParser";
|
|
31
|
+
import { TestConstructContext } from "./ForgeParser";
|
|
32
|
+
import { ArrowOpContext } from "./ForgeParser";
|
|
33
|
+
import { CompareOpContext } from "./ForgeParser";
|
|
34
|
+
import { LetDeclContext } from "./ForgeParser";
|
|
35
|
+
import { BlockContext } from "./ForgeParser";
|
|
36
|
+
import { BlockOrBarContext } from "./ForgeParser";
|
|
37
|
+
import { QuantContext } from "./ForgeParser";
|
|
38
|
+
import { QualNameContext } from "./ForgeParser";
|
|
39
|
+
import { OptionDeclContext } from "./ForgeParser";
|
|
40
|
+
import { NameContext } from "./ForgeParser";
|
|
41
|
+
import { NameListContext } from "./ForgeParser";
|
|
42
|
+
import { QualNameListContext } from "./ForgeParser";
|
|
43
|
+
import { ParaDeclListContext } from "./ForgeParser";
|
|
44
|
+
import { QuantDeclListContext } from "./ForgeParser";
|
|
45
|
+
import { ArrowDeclListContext } from "./ForgeParser";
|
|
46
|
+
import { LetDeclListContext } from "./ForgeParser";
|
|
47
|
+
import { TypescopeListContext } from "./ForgeParser";
|
|
48
|
+
import { ExprListContext } from "./ForgeParser";
|
|
49
|
+
import { ExprContext } from "./ForgeParser";
|
|
50
|
+
import { Expr1Context } from "./ForgeParser";
|
|
51
|
+
import { Expr1_5Context } from "./ForgeParser";
|
|
52
|
+
import { Expr2Context } from "./ForgeParser";
|
|
53
|
+
import { Expr3Context } from "./ForgeParser";
|
|
54
|
+
import { Expr4Context } from "./ForgeParser";
|
|
55
|
+
import { Expr4_5Context } from "./ForgeParser";
|
|
56
|
+
import { Expr5Context } from "./ForgeParser";
|
|
57
|
+
import { Expr6Context } from "./ForgeParser";
|
|
58
|
+
import { Expr7Context } from "./ForgeParser";
|
|
59
|
+
import { Expr8Context } from "./ForgeParser";
|
|
60
|
+
import { Expr9Context } from "./ForgeParser";
|
|
61
|
+
import { Expr10Context } from "./ForgeParser";
|
|
62
|
+
import { Expr11Context } from "./ForgeParser";
|
|
63
|
+
import { Expr12Context } from "./ForgeParser";
|
|
64
|
+
import { Expr13Context } from "./ForgeParser";
|
|
65
|
+
import { Expr14Context } from "./ForgeParser";
|
|
66
|
+
import { Expr15Context } from "./ForgeParser";
|
|
67
|
+
import { Expr16Context } from "./ForgeParser";
|
|
68
|
+
import { Expr17Context } from "./ForgeParser";
|
|
69
|
+
import { Expr18Context } from "./ForgeParser";
|
|
70
|
+
import { ArrowExprContext } from "./ForgeParser";
|
|
71
|
+
import { SexprDeclContext } from "./ForgeParser";
|
|
72
|
+
import { SexprContext } from "./ForgeParser";
|
|
73
|
+
import { InstDeclContext } from "./ForgeParser";
|
|
74
|
+
import { EvalRelDeclContext } from "./ForgeParser";
|
|
75
|
+
import { EvalDeclContext } from "./ForgeParser";
|
|
76
|
+
import { ExampleDeclContext } from "./ForgeParser";
|
|
77
|
+
import { QueryDeclContext } from "./ForgeParser";
|
|
78
|
+
import { NumberListContext } from "./ForgeParser";
|
|
79
|
+
import { NumberContext } from "./ForgeParser";
|
|
80
|
+
import { BoundsContext } from "./ForgeParser";
|
|
81
|
+
import { AtomNameOrNumberContext } from "./ForgeParser";
|
|
82
|
+
import { BoundContext } from "./ForgeParser";
|
|
83
|
+
import { BoundLHSContext } from "./ForgeParser";
|
|
84
|
+
import { BindRHSUnionContext } from "./ForgeParser";
|
|
85
|
+
import { BindRHSProductContext } from "./ForgeParser";
|
|
86
|
+
import { BindRHSProductBaseContext } from "./ForgeParser";
|
|
87
|
+
/**
|
|
88
|
+
* This interface defines a complete generic visitor for a parse tree produced
|
|
89
|
+
* by `ForgeParser`.
|
|
90
|
+
*
|
|
91
|
+
* @param <Result> The return type of the visit operation. Use `void` for
|
|
92
|
+
* operations with no return type.
|
|
93
|
+
*/
|
|
94
|
+
export interface ForgeVisitor<Result> extends ParseTreeVisitor<Result> {
|
|
95
|
+
/**
|
|
96
|
+
* Visit a parse tree produced by `ForgeParser.predDecl`.
|
|
97
|
+
* @param ctx the parse tree
|
|
98
|
+
* @return the visitor result
|
|
99
|
+
*/
|
|
100
|
+
visitPredDecl?: (ctx: PredDeclContext) => Result;
|
|
101
|
+
/**
|
|
102
|
+
* Visit a parse tree produced by `ForgeParser.parseExpr`.
|
|
103
|
+
* @param ctx the parse tree
|
|
104
|
+
* @return the visitor result
|
|
105
|
+
*/
|
|
106
|
+
visitParseExpr?: (ctx: ParseExprContext) => Result;
|
|
107
|
+
/**
|
|
108
|
+
* Visit a parse tree produced by `ForgeParser.alloyModule`.
|
|
109
|
+
* @param ctx the parse tree
|
|
110
|
+
* @return the visitor result
|
|
111
|
+
*/
|
|
112
|
+
visitAlloyModule?: (ctx: AlloyModuleContext) => Result;
|
|
113
|
+
/**
|
|
114
|
+
* Visit a parse tree produced by `ForgeParser.importDecl`.
|
|
115
|
+
* @param ctx the parse tree
|
|
116
|
+
* @return the visitor result
|
|
117
|
+
*/
|
|
118
|
+
visitImportDecl?: (ctx: ImportDeclContext) => Result;
|
|
119
|
+
/**
|
|
120
|
+
* Visit a parse tree produced by `ForgeParser.paragraph`.
|
|
121
|
+
* @param ctx the parse tree
|
|
122
|
+
* @return the visitor result
|
|
123
|
+
*/
|
|
124
|
+
visitParagraph?: (ctx: ParagraphContext) => Result;
|
|
125
|
+
/**
|
|
126
|
+
* Visit a parse tree produced by `ForgeParser.sigDecl`.
|
|
127
|
+
* @param ctx the parse tree
|
|
128
|
+
* @return the visitor result
|
|
129
|
+
*/
|
|
130
|
+
visitSigDecl?: (ctx: SigDeclContext) => Result;
|
|
131
|
+
/**
|
|
132
|
+
* Visit a parse tree produced by `ForgeParser.sigExt`.
|
|
133
|
+
* @param ctx the parse tree
|
|
134
|
+
* @return the visitor result
|
|
135
|
+
*/
|
|
136
|
+
visitSigExt?: (ctx: SigExtContext) => Result;
|
|
137
|
+
/**
|
|
138
|
+
* Visit a parse tree produced by `ForgeParser.mult`.
|
|
139
|
+
* @param ctx the parse tree
|
|
140
|
+
* @return the visitor result
|
|
141
|
+
*/
|
|
142
|
+
visitMult?: (ctx: MultContext) => Result;
|
|
143
|
+
/**
|
|
144
|
+
* Visit a parse tree produced by `ForgeParser.arrowMult`.
|
|
145
|
+
* @param ctx the parse tree
|
|
146
|
+
* @return the visitor result
|
|
147
|
+
*/
|
|
148
|
+
visitArrowMult?: (ctx: ArrowMultContext) => Result;
|
|
149
|
+
/**
|
|
150
|
+
* Visit a parse tree produced by `ForgeParser.helperMult`.
|
|
151
|
+
* @param ctx the parse tree
|
|
152
|
+
* @return the visitor result
|
|
153
|
+
*/
|
|
154
|
+
visitHelperMult?: (ctx: HelperMultContext) => Result;
|
|
155
|
+
/**
|
|
156
|
+
* Visit a parse tree produced by `ForgeParser.paraDecl`.
|
|
157
|
+
* @param ctx the parse tree
|
|
158
|
+
* @return the visitor result
|
|
159
|
+
*/
|
|
160
|
+
visitParaDecl?: (ctx: ParaDeclContext) => Result;
|
|
161
|
+
/**
|
|
162
|
+
* Visit a parse tree produced by `ForgeParser.quantDecl`.
|
|
163
|
+
* @param ctx the parse tree
|
|
164
|
+
* @return the visitor result
|
|
165
|
+
*/
|
|
166
|
+
visitQuantDecl?: (ctx: QuantDeclContext) => Result;
|
|
167
|
+
/**
|
|
168
|
+
* Visit a parse tree produced by `ForgeParser.arrowDecl`.
|
|
169
|
+
* @param ctx the parse tree
|
|
170
|
+
* @return the visitor result
|
|
171
|
+
*/
|
|
172
|
+
visitArrowDecl?: (ctx: ArrowDeclContext) => Result;
|
|
173
|
+
/**
|
|
174
|
+
* Visit a parse tree produced by `ForgeParser.predType`.
|
|
175
|
+
* @param ctx the parse tree
|
|
176
|
+
* @return the visitor result
|
|
177
|
+
*/
|
|
178
|
+
visitPredType?: (ctx: PredTypeContext) => Result;
|
|
179
|
+
/**
|
|
180
|
+
* Visit a parse tree produced by `ForgeParser.funDecl`.
|
|
181
|
+
* @param ctx the parse tree
|
|
182
|
+
* @return the visitor result
|
|
183
|
+
*/
|
|
184
|
+
visitFunDecl?: (ctx: FunDeclContext) => Result;
|
|
185
|
+
/**
|
|
186
|
+
* Visit a parse tree produced by `ForgeParser.paraDecls`.
|
|
187
|
+
* @param ctx the parse tree
|
|
188
|
+
* @return the visitor result
|
|
189
|
+
*/
|
|
190
|
+
visitParaDecls?: (ctx: ParaDeclsContext) => Result;
|
|
191
|
+
/**
|
|
192
|
+
* Visit a parse tree produced by `ForgeParser.assertDecl`.
|
|
193
|
+
* @param ctx the parse tree
|
|
194
|
+
* @return the visitor result
|
|
195
|
+
*/
|
|
196
|
+
visitAssertDecl?: (ctx: AssertDeclContext) => Result;
|
|
197
|
+
/**
|
|
198
|
+
* Visit a parse tree produced by `ForgeParser.cmdDecl`.
|
|
199
|
+
* @param ctx the parse tree
|
|
200
|
+
* @return the visitor result
|
|
201
|
+
*/
|
|
202
|
+
visitCmdDecl?: (ctx: CmdDeclContext) => Result;
|
|
203
|
+
/**
|
|
204
|
+
* Visit a parse tree produced by `ForgeParser.testDecl`.
|
|
205
|
+
* @param ctx the parse tree
|
|
206
|
+
* @return the visitor result
|
|
207
|
+
*/
|
|
208
|
+
visitTestDecl?: (ctx: TestDeclContext) => Result;
|
|
209
|
+
/**
|
|
210
|
+
* Visit a parse tree produced by `ForgeParser.testExpectDecl`.
|
|
211
|
+
* @param ctx the parse tree
|
|
212
|
+
* @return the visitor result
|
|
213
|
+
*/
|
|
214
|
+
visitTestExpectDecl?: (ctx: TestExpectDeclContext) => Result;
|
|
215
|
+
/**
|
|
216
|
+
* Visit a parse tree produced by `ForgeParser.testBlock`.
|
|
217
|
+
* @param ctx the parse tree
|
|
218
|
+
* @return the visitor result
|
|
219
|
+
*/
|
|
220
|
+
visitTestBlock?: (ctx: TestBlockContext) => Result;
|
|
221
|
+
/**
|
|
222
|
+
* Visit a parse tree produced by `ForgeParser.scope`.
|
|
223
|
+
* @param ctx the parse tree
|
|
224
|
+
* @return the visitor result
|
|
225
|
+
*/
|
|
226
|
+
visitScope?: (ctx: ScopeContext) => Result;
|
|
227
|
+
/**
|
|
228
|
+
* Visit a parse tree produced by `ForgeParser.typescope`.
|
|
229
|
+
* @param ctx the parse tree
|
|
230
|
+
* @return the visitor result
|
|
231
|
+
*/
|
|
232
|
+
visitTypescope?: (ctx: TypescopeContext) => Result;
|
|
233
|
+
/**
|
|
234
|
+
* Visit a parse tree produced by `ForgeParser.const`.
|
|
235
|
+
* @param ctx the parse tree
|
|
236
|
+
* @return the visitor result
|
|
237
|
+
*/
|
|
238
|
+
visitConst?: (ctx: ConstContext) => Result;
|
|
239
|
+
/**
|
|
240
|
+
* Visit a parse tree produced by `ForgeParser.satisfiabilityDecl`.
|
|
241
|
+
* @param ctx the parse tree
|
|
242
|
+
* @return the visitor result
|
|
243
|
+
*/
|
|
244
|
+
visitSatisfiabilityDecl?: (ctx: SatisfiabilityDeclContext) => Result;
|
|
245
|
+
/**
|
|
246
|
+
* Visit a parse tree produced by `ForgeParser.quantifiedPropertyDecl`.
|
|
247
|
+
* @param ctx the parse tree
|
|
248
|
+
* @return the visitor result
|
|
249
|
+
*/
|
|
250
|
+
visitQuantifiedPropertyDecl?: (ctx: QuantifiedPropertyDeclContext) => Result;
|
|
251
|
+
/**
|
|
252
|
+
* Visit a parse tree produced by `ForgeParser.propertyDecl`.
|
|
253
|
+
* @param ctx the parse tree
|
|
254
|
+
* @return the visitor result
|
|
255
|
+
*/
|
|
256
|
+
visitPropertyDecl?: (ctx: PropertyDeclContext) => Result;
|
|
257
|
+
/**
|
|
258
|
+
* Visit a parse tree produced by `ForgeParser.consistencyDecl`.
|
|
259
|
+
* @param ctx the parse tree
|
|
260
|
+
* @return the visitor result
|
|
261
|
+
*/
|
|
262
|
+
visitConsistencyDecl?: (ctx: ConsistencyDeclContext) => Result;
|
|
263
|
+
/**
|
|
264
|
+
* Visit a parse tree produced by `ForgeParser.testSuiteDecl`.
|
|
265
|
+
* @param ctx the parse tree
|
|
266
|
+
* @return the visitor result
|
|
267
|
+
*/
|
|
268
|
+
visitTestSuiteDecl?: (ctx: TestSuiteDeclContext) => Result;
|
|
269
|
+
/**
|
|
270
|
+
* Visit a parse tree produced by `ForgeParser.testConstruct`.
|
|
271
|
+
* @param ctx the parse tree
|
|
272
|
+
* @return the visitor result
|
|
273
|
+
*/
|
|
274
|
+
visitTestConstruct?: (ctx: TestConstructContext) => Result;
|
|
275
|
+
/**
|
|
276
|
+
* Visit a parse tree produced by `ForgeParser.arrowOp`.
|
|
277
|
+
* @param ctx the parse tree
|
|
278
|
+
* @return the visitor result
|
|
279
|
+
*/
|
|
280
|
+
visitArrowOp?: (ctx: ArrowOpContext) => Result;
|
|
281
|
+
/**
|
|
282
|
+
* Visit a parse tree produced by `ForgeParser.compareOp`.
|
|
283
|
+
* @param ctx the parse tree
|
|
284
|
+
* @return the visitor result
|
|
285
|
+
*/
|
|
286
|
+
visitCompareOp?: (ctx: CompareOpContext) => Result;
|
|
287
|
+
/**
|
|
288
|
+
* Visit a parse tree produced by `ForgeParser.letDecl`.
|
|
289
|
+
* @param ctx the parse tree
|
|
290
|
+
* @return the visitor result
|
|
291
|
+
*/
|
|
292
|
+
visitLetDecl?: (ctx: LetDeclContext) => Result;
|
|
293
|
+
/**
|
|
294
|
+
* Visit a parse tree produced by `ForgeParser.block`.
|
|
295
|
+
* @param ctx the parse tree
|
|
296
|
+
* @return the visitor result
|
|
297
|
+
*/
|
|
298
|
+
visitBlock?: (ctx: BlockContext) => Result;
|
|
299
|
+
/**
|
|
300
|
+
* Visit a parse tree produced by `ForgeParser.blockOrBar`.
|
|
301
|
+
* @param ctx the parse tree
|
|
302
|
+
* @return the visitor result
|
|
303
|
+
*/
|
|
304
|
+
visitBlockOrBar?: (ctx: BlockOrBarContext) => Result;
|
|
305
|
+
/**
|
|
306
|
+
* Visit a parse tree produced by `ForgeParser.quant`.
|
|
307
|
+
* @param ctx the parse tree
|
|
308
|
+
* @return the visitor result
|
|
309
|
+
*/
|
|
310
|
+
visitQuant?: (ctx: QuantContext) => Result;
|
|
311
|
+
/**
|
|
312
|
+
* Visit a parse tree produced by `ForgeParser.qualName`.
|
|
313
|
+
* @param ctx the parse tree
|
|
314
|
+
* @return the visitor result
|
|
315
|
+
*/
|
|
316
|
+
visitQualName?: (ctx: QualNameContext) => Result;
|
|
317
|
+
/**
|
|
318
|
+
* Visit a parse tree produced by `ForgeParser.optionDecl`.
|
|
319
|
+
* @param ctx the parse tree
|
|
320
|
+
* @return the visitor result
|
|
321
|
+
*/
|
|
322
|
+
visitOptionDecl?: (ctx: OptionDeclContext) => Result;
|
|
323
|
+
/**
|
|
324
|
+
* Visit a parse tree produced by `ForgeParser.name`.
|
|
325
|
+
* @param ctx the parse tree
|
|
326
|
+
* @return the visitor result
|
|
327
|
+
*/
|
|
328
|
+
visitName?: (ctx: NameContext) => Result;
|
|
329
|
+
/**
|
|
330
|
+
* Visit a parse tree produced by `ForgeParser.nameList`.
|
|
331
|
+
* @param ctx the parse tree
|
|
332
|
+
* @return the visitor result
|
|
333
|
+
*/
|
|
334
|
+
visitNameList?: (ctx: NameListContext) => Result;
|
|
335
|
+
/**
|
|
336
|
+
* Visit a parse tree produced by `ForgeParser.qualNameList`.
|
|
337
|
+
* @param ctx the parse tree
|
|
338
|
+
* @return the visitor result
|
|
339
|
+
*/
|
|
340
|
+
visitQualNameList?: (ctx: QualNameListContext) => Result;
|
|
341
|
+
/**
|
|
342
|
+
* Visit a parse tree produced by `ForgeParser.paraDeclList`.
|
|
343
|
+
* @param ctx the parse tree
|
|
344
|
+
* @return the visitor result
|
|
345
|
+
*/
|
|
346
|
+
visitParaDeclList?: (ctx: ParaDeclListContext) => Result;
|
|
347
|
+
/**
|
|
348
|
+
* Visit a parse tree produced by `ForgeParser.quantDeclList`.
|
|
349
|
+
* @param ctx the parse tree
|
|
350
|
+
* @return the visitor result
|
|
351
|
+
*/
|
|
352
|
+
visitQuantDeclList?: (ctx: QuantDeclListContext) => Result;
|
|
353
|
+
/**
|
|
354
|
+
* Visit a parse tree produced by `ForgeParser.arrowDeclList`.
|
|
355
|
+
* @param ctx the parse tree
|
|
356
|
+
* @return the visitor result
|
|
357
|
+
*/
|
|
358
|
+
visitArrowDeclList?: (ctx: ArrowDeclListContext) => Result;
|
|
359
|
+
/**
|
|
360
|
+
* Visit a parse tree produced by `ForgeParser.letDeclList`.
|
|
361
|
+
* @param ctx the parse tree
|
|
362
|
+
* @return the visitor result
|
|
363
|
+
*/
|
|
364
|
+
visitLetDeclList?: (ctx: LetDeclListContext) => Result;
|
|
365
|
+
/**
|
|
366
|
+
* Visit a parse tree produced by `ForgeParser.typescopeList`.
|
|
367
|
+
* @param ctx the parse tree
|
|
368
|
+
* @return the visitor result
|
|
369
|
+
*/
|
|
370
|
+
visitTypescopeList?: (ctx: TypescopeListContext) => Result;
|
|
371
|
+
/**
|
|
372
|
+
* Visit a parse tree produced by `ForgeParser.exprList`.
|
|
373
|
+
* @param ctx the parse tree
|
|
374
|
+
* @return the visitor result
|
|
375
|
+
*/
|
|
376
|
+
visitExprList?: (ctx: ExprListContext) => Result;
|
|
377
|
+
/**
|
|
378
|
+
* Visit a parse tree produced by `ForgeParser.expr`.
|
|
379
|
+
* @param ctx the parse tree
|
|
380
|
+
* @return the visitor result
|
|
381
|
+
*/
|
|
382
|
+
visitExpr?: (ctx: ExprContext) => Result;
|
|
383
|
+
/**
|
|
384
|
+
* Visit a parse tree produced by `ForgeParser.expr1`.
|
|
385
|
+
* @param ctx the parse tree
|
|
386
|
+
* @return the visitor result
|
|
387
|
+
*/
|
|
388
|
+
visitExpr1?: (ctx: Expr1Context) => Result;
|
|
389
|
+
/**
|
|
390
|
+
* Visit a parse tree produced by `ForgeParser.expr1_5`.
|
|
391
|
+
* @param ctx the parse tree
|
|
392
|
+
* @return the visitor result
|
|
393
|
+
*/
|
|
394
|
+
visitExpr1_5?: (ctx: Expr1_5Context) => Result;
|
|
395
|
+
/**
|
|
396
|
+
* Visit a parse tree produced by `ForgeParser.expr2`.
|
|
397
|
+
* @param ctx the parse tree
|
|
398
|
+
* @return the visitor result
|
|
399
|
+
*/
|
|
400
|
+
visitExpr2?: (ctx: Expr2Context) => Result;
|
|
401
|
+
/**
|
|
402
|
+
* Visit a parse tree produced by `ForgeParser.expr3`.
|
|
403
|
+
* @param ctx the parse tree
|
|
404
|
+
* @return the visitor result
|
|
405
|
+
*/
|
|
406
|
+
visitExpr3?: (ctx: Expr3Context) => Result;
|
|
407
|
+
/**
|
|
408
|
+
* Visit a parse tree produced by `ForgeParser.expr4`.
|
|
409
|
+
* @param ctx the parse tree
|
|
410
|
+
* @return the visitor result
|
|
411
|
+
*/
|
|
412
|
+
visitExpr4?: (ctx: Expr4Context) => Result;
|
|
413
|
+
/**
|
|
414
|
+
* Visit a parse tree produced by `ForgeParser.expr4_5`.
|
|
415
|
+
* @param ctx the parse tree
|
|
416
|
+
* @return the visitor result
|
|
417
|
+
*/
|
|
418
|
+
visitExpr4_5?: (ctx: Expr4_5Context) => Result;
|
|
419
|
+
/**
|
|
420
|
+
* Visit a parse tree produced by `ForgeParser.expr5`.
|
|
421
|
+
* @param ctx the parse tree
|
|
422
|
+
* @return the visitor result
|
|
423
|
+
*/
|
|
424
|
+
visitExpr5?: (ctx: Expr5Context) => Result;
|
|
425
|
+
/**
|
|
426
|
+
* Visit a parse tree produced by `ForgeParser.expr6`.
|
|
427
|
+
* @param ctx the parse tree
|
|
428
|
+
* @return the visitor result
|
|
429
|
+
*/
|
|
430
|
+
visitExpr6?: (ctx: Expr6Context) => Result;
|
|
431
|
+
/**
|
|
432
|
+
* Visit a parse tree produced by `ForgeParser.expr7`.
|
|
433
|
+
* @param ctx the parse tree
|
|
434
|
+
* @return the visitor result
|
|
435
|
+
*/
|
|
436
|
+
visitExpr7?: (ctx: Expr7Context) => Result;
|
|
437
|
+
/**
|
|
438
|
+
* Visit a parse tree produced by `ForgeParser.expr8`.
|
|
439
|
+
* @param ctx the parse tree
|
|
440
|
+
* @return the visitor result
|
|
441
|
+
*/
|
|
442
|
+
visitExpr8?: (ctx: Expr8Context) => Result;
|
|
443
|
+
/**
|
|
444
|
+
* Visit a parse tree produced by `ForgeParser.expr9`.
|
|
445
|
+
* @param ctx the parse tree
|
|
446
|
+
* @return the visitor result
|
|
447
|
+
*/
|
|
448
|
+
visitExpr9?: (ctx: Expr9Context) => Result;
|
|
449
|
+
/**
|
|
450
|
+
* Visit a parse tree produced by `ForgeParser.expr10`.
|
|
451
|
+
* @param ctx the parse tree
|
|
452
|
+
* @return the visitor result
|
|
453
|
+
*/
|
|
454
|
+
visitExpr10?: (ctx: Expr10Context) => Result;
|
|
455
|
+
/**
|
|
456
|
+
* Visit a parse tree produced by `ForgeParser.expr11`.
|
|
457
|
+
* @param ctx the parse tree
|
|
458
|
+
* @return the visitor result
|
|
459
|
+
*/
|
|
460
|
+
visitExpr11?: (ctx: Expr11Context) => Result;
|
|
461
|
+
/**
|
|
462
|
+
* Visit a parse tree produced by `ForgeParser.expr12`.
|
|
463
|
+
* @param ctx the parse tree
|
|
464
|
+
* @return the visitor result
|
|
465
|
+
*/
|
|
466
|
+
visitExpr12?: (ctx: Expr12Context) => Result;
|
|
467
|
+
/**
|
|
468
|
+
* Visit a parse tree produced by `ForgeParser.expr13`.
|
|
469
|
+
* @param ctx the parse tree
|
|
470
|
+
* @return the visitor result
|
|
471
|
+
*/
|
|
472
|
+
visitExpr13?: (ctx: Expr13Context) => Result;
|
|
473
|
+
/**
|
|
474
|
+
* Visit a parse tree produced by `ForgeParser.expr14`.
|
|
475
|
+
* @param ctx the parse tree
|
|
476
|
+
* @return the visitor result
|
|
477
|
+
*/
|
|
478
|
+
visitExpr14?: (ctx: Expr14Context) => Result;
|
|
479
|
+
/**
|
|
480
|
+
* Visit a parse tree produced by `ForgeParser.expr15`.
|
|
481
|
+
* @param ctx the parse tree
|
|
482
|
+
* @return the visitor result
|
|
483
|
+
*/
|
|
484
|
+
visitExpr15?: (ctx: Expr15Context) => Result;
|
|
485
|
+
/**
|
|
486
|
+
* Visit a parse tree produced by `ForgeParser.expr16`.
|
|
487
|
+
* @param ctx the parse tree
|
|
488
|
+
* @return the visitor result
|
|
489
|
+
*/
|
|
490
|
+
visitExpr16?: (ctx: Expr16Context) => Result;
|
|
491
|
+
/**
|
|
492
|
+
* Visit a parse tree produced by `ForgeParser.expr17`.
|
|
493
|
+
* @param ctx the parse tree
|
|
494
|
+
* @return the visitor result
|
|
495
|
+
*/
|
|
496
|
+
visitExpr17?: (ctx: Expr17Context) => Result;
|
|
497
|
+
/**
|
|
498
|
+
* Visit a parse tree produced by `ForgeParser.expr18`.
|
|
499
|
+
* @param ctx the parse tree
|
|
500
|
+
* @return the visitor result
|
|
501
|
+
*/
|
|
502
|
+
visitExpr18?: (ctx: Expr18Context) => Result;
|
|
503
|
+
/**
|
|
504
|
+
* Visit a parse tree produced by `ForgeParser.arrowExpr`.
|
|
505
|
+
* @param ctx the parse tree
|
|
506
|
+
* @return the visitor result
|
|
507
|
+
*/
|
|
508
|
+
visitArrowExpr?: (ctx: ArrowExprContext) => Result;
|
|
509
|
+
/**
|
|
510
|
+
* Visit a parse tree produced by `ForgeParser.sexprDecl`.
|
|
511
|
+
* @param ctx the parse tree
|
|
512
|
+
* @return the visitor result
|
|
513
|
+
*/
|
|
514
|
+
visitSexprDecl?: (ctx: SexprDeclContext) => Result;
|
|
515
|
+
/**
|
|
516
|
+
* Visit a parse tree produced by `ForgeParser.sexpr`.
|
|
517
|
+
* @param ctx the parse tree
|
|
518
|
+
* @return the visitor result
|
|
519
|
+
*/
|
|
520
|
+
visitSexpr?: (ctx: SexprContext) => Result;
|
|
521
|
+
/**
|
|
522
|
+
* Visit a parse tree produced by `ForgeParser.instDecl`.
|
|
523
|
+
* @param ctx the parse tree
|
|
524
|
+
* @return the visitor result
|
|
525
|
+
*/
|
|
526
|
+
visitInstDecl?: (ctx: InstDeclContext) => Result;
|
|
527
|
+
/**
|
|
528
|
+
* Visit a parse tree produced by `ForgeParser.evalRelDecl`.
|
|
529
|
+
* @param ctx the parse tree
|
|
530
|
+
* @return the visitor result
|
|
531
|
+
*/
|
|
532
|
+
visitEvalRelDecl?: (ctx: EvalRelDeclContext) => Result;
|
|
533
|
+
/**
|
|
534
|
+
* Visit a parse tree produced by `ForgeParser.evalDecl`.
|
|
535
|
+
* @param ctx the parse tree
|
|
536
|
+
* @return the visitor result
|
|
537
|
+
*/
|
|
538
|
+
visitEvalDecl?: (ctx: EvalDeclContext) => Result;
|
|
539
|
+
/**
|
|
540
|
+
* Visit a parse tree produced by `ForgeParser.exampleDecl`.
|
|
541
|
+
* @param ctx the parse tree
|
|
542
|
+
* @return the visitor result
|
|
543
|
+
*/
|
|
544
|
+
visitExampleDecl?: (ctx: ExampleDeclContext) => Result;
|
|
545
|
+
/**
|
|
546
|
+
* Visit a parse tree produced by `ForgeParser.queryDecl`.
|
|
547
|
+
* @param ctx the parse tree
|
|
548
|
+
* @return the visitor result
|
|
549
|
+
*/
|
|
550
|
+
visitQueryDecl?: (ctx: QueryDeclContext) => Result;
|
|
551
|
+
/**
|
|
552
|
+
* Visit a parse tree produced by `ForgeParser.numberList`.
|
|
553
|
+
* @param ctx the parse tree
|
|
554
|
+
* @return the visitor result
|
|
555
|
+
*/
|
|
556
|
+
visitNumberList?: (ctx: NumberListContext) => Result;
|
|
557
|
+
/**
|
|
558
|
+
* Visit a parse tree produced by `ForgeParser.number`.
|
|
559
|
+
* @param ctx the parse tree
|
|
560
|
+
* @return the visitor result
|
|
561
|
+
*/
|
|
562
|
+
visitNumber?: (ctx: NumberContext) => Result;
|
|
563
|
+
/**
|
|
564
|
+
* Visit a parse tree produced by `ForgeParser.bounds`.
|
|
565
|
+
* @param ctx the parse tree
|
|
566
|
+
* @return the visitor result
|
|
567
|
+
*/
|
|
568
|
+
visitBounds?: (ctx: BoundsContext) => Result;
|
|
569
|
+
/**
|
|
570
|
+
* Visit a parse tree produced by `ForgeParser.atomNameOrNumber`.
|
|
571
|
+
* @param ctx the parse tree
|
|
572
|
+
* @return the visitor result
|
|
573
|
+
*/
|
|
574
|
+
visitAtomNameOrNumber?: (ctx: AtomNameOrNumberContext) => Result;
|
|
575
|
+
/**
|
|
576
|
+
* Visit a parse tree produced by `ForgeParser.bound`.
|
|
577
|
+
* @param ctx the parse tree
|
|
578
|
+
* @return the visitor result
|
|
579
|
+
*/
|
|
580
|
+
visitBound?: (ctx: BoundContext) => Result;
|
|
581
|
+
/**
|
|
582
|
+
* Visit a parse tree produced by `ForgeParser.boundLHS`.
|
|
583
|
+
* @param ctx the parse tree
|
|
584
|
+
* @return the visitor result
|
|
585
|
+
*/
|
|
586
|
+
visitBoundLHS?: (ctx: BoundLHSContext) => Result;
|
|
587
|
+
/**
|
|
588
|
+
* Visit a parse tree produced by `ForgeParser.bindRHSUnion`.
|
|
589
|
+
* @param ctx the parse tree
|
|
590
|
+
* @return the visitor result
|
|
591
|
+
*/
|
|
592
|
+
visitBindRHSUnion?: (ctx: BindRHSUnionContext) => Result;
|
|
593
|
+
/**
|
|
594
|
+
* Visit a parse tree produced by `ForgeParser.bindRHSProduct`.
|
|
595
|
+
* @param ctx the parse tree
|
|
596
|
+
* @return the visitor result
|
|
597
|
+
*/
|
|
598
|
+
visitBindRHSProduct?: (ctx: BindRHSProductContext) => Result;
|
|
599
|
+
/**
|
|
600
|
+
* Visit a parse tree produced by `ForgeParser.bindRHSProductBase`.
|
|
601
|
+
* @param ctx the parse tree
|
|
602
|
+
* @return the visitor result
|
|
603
|
+
*/
|
|
604
|
+
visitBindRHSProductBase?: (ctx: BindRHSProductBaseContext) => Result;
|
|
605
|
+
}
|