The current version provides a full Ada 2022 syntax analyzer library. The analyzer parses the source and creates the syntax tree and cross reference of defining identifiers in the source. Both structures are allocated in an arena pool storage and can be released as a whole. The code source can be file, stream or a user-defined container implementing multi-line source interface. Unicode is fully supported as well as Unicode identifiers normalization checks.
Features
- The analyzer parses the source and creates the syntax tree and cross reference of defining identifiers in the source
- The cross reference contains the defining identifiers declared in the code and visibility scopes
- The visibility scopes can be used for name resolution, e.g. finding all matching names visible at the location. Note that this does not cover use-clauses which need to be handed if the complete list required. Use clauses are linked in the list for each declaration context of the tree in order to ease the process
- The tree and cross-reference structures are allocated in an arena pool storage and can be released as a whole
- The code source can be file, stream or a user-defined container implementing multi-line source interface. One can compile from a database or a git repository, if the interface is provided
- There can be any number of compilation units in the source. One parsing call takes one unit from the source
- Unicode is fully supported as well as Unicode identifiers normalization checks
- Associative operations like +,-,*,/,.,| are coalesced
- There is a text output of the tree in a normalized form
- Constant folding is supported. If enabled universal expressions and constant Boolean expressions are evaluated into constants
- There is a text output in a tree form
- Syntax trees can be compared for equality
- The tree and cross-reference can be serialized into a stream
- There is a test suite comprised of ACATS tests related to the syntax (mostly, illegal code to be rejected) and ARM examples
Categories
CompilersFollow Ada syntax analyzer
Other Useful Business Software
MongoDB Atlas runs apps anywhere
MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of Ada syntax analyzer!