This is a part of the Nirvana project.
This library is intended for the easy creation of the CORBA IDL compilers.
It performs:
- Command line parsing
- Preprocessing
- Parsing IDL files
- Building the Abstract Syntax Tree
To create an IDL compiler:
- Derive your compiler class from
class IDL_FrontEnd
. - Derive your back-end code generator from
class AST::CodeGen
.
API reference: https://nirvanaos.github.io/idlfe/
See: https://www.omg.org/spec/IDL/4.2/
- Core Data Types
- Extended Data Types
- Any
- Interfaces Basic
- Interfaces Full
- CORBA-Specific - Interfaces (except for
import
) - Value Types
- CORBA-Specific - Value Types
- Anonimous Types (optional)
Install nirvanaos.idlfe.vc.1.#.# NuGet package.
To build with MS Visual Studio use supermodule https://github.com/nirvanaos/idlfe.vc.git
To create own compilation project you must have:
- C++17 compilant compiler
- Flex + Bison
- Fixed point arithmetic library https://github.com/nirvanaos/decNumber
Simple C/C++ preprocessor https://github.com/danmar/simplecpp
SafeInt library https://github.com/dcleblanc/SafeInt.git