rm edu.berkeley.sbp.jar
make test
-profile: edu.berkeley.sbp.jar
- $(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- -profile -agentlib:yjpagent \
- tests/meta.g \
- tests/testcase.g \
- tests/regression.tc
-
#-Dsbp.verbose=true
test: edu.berkeley.sbp.jar
$(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- tests/meta.g \
+ src/edu/berkeley/sbp/meta/meta.g \
tests/testcase.g \
tests/regression.tc
-archscript: edu.berkeley.sbp.jar
- cd tests; \
- $(java) -cp ArchSimA3.jar:../$< ArchScript \
- test.archscript
-
-codebag: edu.berkeley.sbp.jar
- cd tests; \
- $(java) -cp ArchSimA3.jar:../$< CodeBagParser \
- test.fleet
-
-javatest: edu.berkeley.sbp.jar
- $(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- tests/meta.g \
- tests/testcase.g \
- tests/java.tc
-
-loop: edu.berkeley.sbp.jar
- $(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- -graph \
- tests/meta.g \
- tests/testcase.g \
- tests/loop.tc
-
-pain: edu.berkeley.sbp.jar
- $(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- -graph \
- tests/meta.g \
- tests/testcase.g \
- tests/pain.tc
-
-ifthen: edu.berkeley.sbp.jar
- $(java) -cp $< edu.berkeley.sbp.misc.RegressionTests \
- tests/meta.g \
- tests/testcase.g \
- tests/ifthen.tc
-
boot: edu.berkeley.sbp.jar
cd src; \
$(java) -cp ../$< \
edu.berkeley.sbp.meta.MetaGrammar \
- ../tests/meta.g \
+ ../src/edu/berkeley/sbp/meta/meta.g \
edu.berkeley.sbp.meta.MetaGrammar
edu.berkeley.sbp.jar: $(shell find src -name \*.java)
* Currently this class exports only static methods to create repetitions;
* there are no public instance methods or constructors
*/
-public class Repeat extends Union {
+class Repeat extends Union {
public Repeat(final Element e, boolean zeroOkay, boolean manyOkay, Object tag) {
this(e, zeroOkay, manyOkay, null, false, tag); }
public static File[] includes = new File[] { new File("tests") };
public static void main() throws Exception {
- main(new String[] { "tests/meta.g", "tests/testcase.g", "tests/regression.tc" });
+ main(new String[] { null, "tests/testcase.g", "tests/regression.tc" });
}
public static void main(String[] s) throws Exception {
s = s2;
}
- System.err.println("parsing " + s[0]);
- Tree<String> res = new CharParser(MetaGrammar.newInstance()).parse(new FileInputStream(s[0])).expand1();
+ InputStream metaGrammarStream =
+ s[0] == null
+ ? RegressionTests.class.getClassLoader().getResourceAsStream("edu/berkeley/sbp/meta/meta.g")
+ : new FileInputStream(s[0]);
+ Tree<String> res = new CharParser(MetaGrammar.newInstance()).parse(metaGrammarStream).expand1();
Union meta = GrammarAST.buildFromAST(res, "s", includes);
System.err.println("parsing " + s[1]);
-#import meta.g as grammar
+#import ../src/edu/berkeley/sbp/meta/meta.g as grammar
// this is a testx
s = ws! (TestCases:: TestCase */ ws) ws!
Input = "input" grammar.Quoted ";" /ws