APEXlang-Parser is an ANTLR-4-based parser for APEXlang. The parser requires a Java Virtual Machine supporting version 11 or newer and is available on Maven Central.
This parser is designed to be APEXlang version-agnostic.
While the grammar documented in the API Reference defines both the language structure and the valid APEXlang elements, the grammar in this repository is limited to structural concerns. Its purpose is to recognise and parse valid syntax. Semantic validation of language constructs is out of scope.
The goal is to provide a parser that can be used by linters such as dbLinter. It is not intended to replicate the semantic validation performed by the APEXlang compiler in SQLcl, SQL Developer for VS Code and ORDS.
The syntax diagrams of the APEXlang grammar are produced by RR and can be found here.
The parser is validated using a comprehensive test suite maintained in a private repository. As a result, the test cases are not included in this project.
APEXlang-Parser is licensed under the Apache License, Version 2.0. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
