nirvanaos.idlfe.vc
3.4.3
dotnet add package nirvanaos.idlfe.vc --version 3.4.3
NuGet\Install-Package nirvanaos.idlfe.vc -Version 3.4.3
<PackageReference Include="nirvanaos.idlfe.vc" Version="3.4.3" />
<PackageVersion Include="nirvanaos.idlfe.vc" Version="3.4.3" />
<PackageReference Include="nirvanaos.idlfe.vc" />
paket add nirvanaos.idlfe.vc --version 3.4.3
#r "nuget: nirvanaos.idlfe.vc, 3.4.3"
#:package nirvanaos.idlfe.vc@3.4.3
#addin nuget:?package=nirvanaos.idlfe.vc&version=3.4.3
#tool nuget:?package=nirvanaos.idlfe.vc&version=3.4.3
IDL compiler front-end library
This is a part of the Nirvana project.
Purpose
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. - Override pure virtual method
IDL_FrontEnd::generate_code(AST::Root& tree).
For the example see: https://github.com/nirvanaos/idlfe/tree/master/example
API reference: https://nirvanaos.github.io/idlfe/
Implemented Building Blocks
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)
How to use
NuGet
Find nirvanaos.idlfe NuGet packages on https://www.nuget.org/.
vcpkg
Use idlfe port from https://github.com/nirvanaos/vcpkg-registry.git (Flex + Bison must be installed on the build system).
Build prerequisites
- C++17 compilant compiler
- Flex + Bison must be installed on the build system
For the Microsoft Visual Studio builds you can use supermodule https://github.com/nirvanaos/idlfe.vc.git
Used libraries
- Fixed point arithmetic library https://github.com/nirvanaos/decNumber
- SafeInt library https://github.com/dcleblanc/SafeInt.git
Used submodules
- Danmar simple C/C++ preprocessor https://github.com/silver-popov/simplecpp
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| native | native is compatible. |
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.4.3 | 578 | 7/10/2024 |
| 3.4.2 | 814 | 2/21/2024 |
| 3.4.1 | 634 | 2/9/2024 |
| 3.4.0 | 594 | 1/26/2024 |
| 3.3.4 | 692 | 12/26/2023 |
| 3.3.3 | 587 | 11/30/2023 |
| 3.3.2 | 609 | 11/24/2023 |
| 3.3.1 | 578 | 11/22/2023 |
| 3.3.0 | 560 | 11/13/2023 |
| 3.2.3 | 883 | 9/1/2023 |
| 3.2.2 | 767 | 8/18/2023 |
| 3.2.1 | 733 | 8/15/2023 |
| 3.2.0 | 762 | 8/13/2023 |
| 3.1.5 | 729 | 7/16/2023 |
| 3.1.4 | 605 | 7/14/2023 |
| 3.1.3 | 653 | 7/8/2023 |
| 3.1.2 | 649 | 6/30/2023 |
| 3.1.1 | 590 | 6/30/2023 |
| 3.1.0 | 613 | 6/30/2023 |
| 3.0.2 | 1,271 | 11/21/2022 |