forked from ftomassetti/antlr-web-example
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
40 lines (34 loc) · 1.09 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
apply plugin: 'java'
repositories {
jcenter()
}
dependencies {
implementation 'org.antlr:antlr4:4.7.2'
}
clean {
delete "src/main/java/generated-parser"
delete "static/generated-parser"
}
task generateParser4JS(type:JavaExec) {
main = 'org.antlr.v4.Tool'
classpath = sourceSets.main.runtimeClasspath
args = ['-Dlanguage=JavaScript', 'calc.g4', '-o', 'static/generated-parser']
}
task generateParser4Java(type:JavaExec) {
main = 'org.antlr.v4.Tool'
classpath = sourceSets.main.runtimeClasspath
args = ['-Dlanguage=Java', 'calc.g4', '-o', 'src/main/java/generated-parser']
}
/**
* java org.antlr.v4.gui.TestRig GrammarName startRuleName
* [-tokens] [-tree] [-gui] [-ps file.ps] [-encoding encodingname]
* [-trace] [-diagnostics] [-SLL]
* [input-filename(s)]
* Use startRuleName='tokens' if GrammarName is a lexer grammar.
* Omitting input-filename makes rig read from stdin.
*/
task runExpr(type:JavaExec) {
main = 'org.antlr.v4.gui.TestRig'
classpath = sourceSets.main.runtimeClasspath
args = ['calc', 'expression', '-tokens', '-trace', "test.txt"]
}