antlr@3: remove
This commit is contained in:
parent
2a9c5977a3
commit
5f89d0dd42
1 changed files with 0 additions and 62 deletions
|
@ -1,62 +0,0 @@
|
|||
class AntlrAT3 < Formula
|
||||
desc "Antlr3 has a C API which has been dropped in Antlr4"
|
||||
homepage "http://www.antlr.org/"
|
||||
url "http://www.antlr3.org/download/antlr-3.5.2-complete.jar"
|
||||
sha256 "26ca659f47d77384f518cf2b6463892fcd4f0b0d4d8c0de2addf697e63e7326b"
|
||||
|
||||
bottle do
|
||||
cellar :any_skip_relocation
|
||||
sha256 "ed849f2435e121d0a0dbbbed4a027dd4f6f71db9a17a2f639bb1e492bdb1b7f0" => :high_sierra
|
||||
sha256 "450bb2d748965c0f25a280a2eb4fd9b371e6f403107053b610dedb030229009e" => :sierra
|
||||
sha256 "450bb2d748965c0f25a280a2eb4fd9b371e6f403107053b610dedb030229009e" => :el_capitan
|
||||
sha256 "450bb2d748965c0f25a280a2eb4fd9b371e6f403107053b610dedb030229009e" => :yosemite
|
||||
end
|
||||
|
||||
depends_on :java
|
||||
|
||||
def install
|
||||
libexec.install "antlr-3.5.2-complete.jar"
|
||||
(share+"java").install_symlink "#{libexec}/antlr-3.5.2-complete.jar" => "antlr3.jar"
|
||||
(bin+"antlr3").write <<~EOS
|
||||
#!/bin/sh
|
||||
java -jar #{libexec}/antlr-3.5.2-complete.jar "$@"
|
||||
EOS
|
||||
end
|
||||
|
||||
test do
|
||||
exppath = testpath/"Exp.g"
|
||||
exppath.write <<~EOS
|
||||
grammar Exp;
|
||||
eval returns [double value]
|
||||
: exp=atomExp {$value = $exp.value;}
|
||||
;
|
||||
atomExp returns [double value]
|
||||
: n=Number {$value = Double.parseDouble($n.text);}
|
||||
;
|
||||
Number
|
||||
: ('0'..'9')+ ('.' ('0'..'9')+)?
|
||||
;
|
||||
WS
|
||||
: (' ' | '\\t' | '\\r'| '\\n') {\$channel=HIDDEN;}
|
||||
;
|
||||
EOS
|
||||
javapath = testpath/"ANTLRDemo.java"
|
||||
javapath.write <<~EOS
|
||||
import org.antlr.runtime.*;
|
||||
public class ANTLRDemo {
|
||||
public static void main(String[] args) throws Exception {
|
||||
ANTLRStringStream in = new ANTLRStringStream("42");
|
||||
ExpLexer lexer = new ExpLexer(in);
|
||||
CommonTokenStream tokens = new CommonTokenStream(lexer);
|
||||
ExpParser parser = new ExpParser(tokens);
|
||||
System.out.println(parser.eval()); // print the value
|
||||
}
|
||||
}
|
||||
EOS
|
||||
ENV.prepend "CLASSPATH", "#{share}/java/antlr3.jar", ":"
|
||||
ENV.prepend "CLASSPATH", ".", ":"
|
||||
system "#{bin}/antlr3", "Exp.g"
|
||||
system "javac", "ANTLRDemo.java"
|
||||
assert_match("42.0", pipe_output("java ANTLRDemo"))
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue