bld-antlr4/README.md
2023-04-04 09:21:48 -04:00

1.3 KiB

Bld extension to generate ANTLR4 parsers

License Java Release GitHub CI

An extension for generating Java sources from ANTLR4 parsers.

private final Antlr4Operation antlr4Operation_ = new Antlr4Operation();
@BuildCommand
public void generateGrammar()
throws Exception {
    antlr4Operation_.executeOnce(o -> o
        .sourceDirectories(List.of(new File(srcMainDirectory(), "antlr")))
        .outputDirectory(new File(buildDirectory(), "generated"))
        .visitor()
        .longMessages());
}

// compileOperation_ is part of the main project
public void compile()
throws Exception {
    generateGrammar();
    compileOperation_.executeOnce(o -> o
        .fromProject(this)
        .mainSourceDirectories(List.of(antlr4Operation_.outputDirectory())));
}