*
* @param args the command-line arguments
* @param grammar the grammar to use
*/
private static void writeVisualBasicCode(String[] args, Grammar grammar) {
VisualBasicParserGenerator gen;
// Read command-line arguments
gen = new VisualBasicParserGenerator(grammar);
for (int i = 1; i < args.length; i++) {
if (args[i].equals("--vboutput")) {
gen.setBaseDir(new File(args[++i]));
} else if (args[i].equals("--vbnamespace")) {
gen.setNamespace(args[++i]);
} else if (args[i].equals("--vbclassname")) {
gen.setBaseName(args[++i]);
} else if (args[i].equals("--vbpublic")) {
gen.setPublicAccess(true);
} else {
printHelp("unrecognized option: " + args[i]);
System.exit(1);
}
}
// Write parser source code
try {
System.out.println("Writing Visual Basic parser source code...");
gen.write();
System.out.println("Done.");
} catch (IOException e) {
printError(e);
System.exit(1);
}