Skip to content

RemedyIT/ridl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RIDL is a Ruby library implementing an Object Management Group (OMG) IDL parser/compiler frontend with support for pluggable (and stackable) backends created by Remedy IT.

RIDL provides a framework for implementing compiler/generators for OMG standard IDL definitions. The framework includes:

  • a RACC based parser supplemented with a custom scanner/tokenizer

  • a complete AST class hierarchy for representing parsed IDL specifications

  • a complete Type class hierarchy

  • IDL constants expression support

  • a builtin IDL preprocessor expression parser/evaluator

  • a flexible framework for pluggable (and stackable) backends

  • basic support for backend code re-generation

  • compliant with the OMG IDL 3.5 standard

  • support for OMG IDL 4.2 annotations

  • support for IDL 4.2 map, int8/uint8, explicitly-named integer types, bitmask, bitset, empty struct, and struct inheritance

Remedy IT has developed multiple backends for RIDL. These include the following open source backends:

When you want to know more about how Remedy IT can assist you with developing your own backend for RIDL contact sales@remedy.nl.

If you find a bug, please report it as RIDL issue.

This software is provided “as is” and without any express or implied warranties, including, without limitation, the implied warranties of merchantibility and fitness for a particular purpose.

RIDL is distributed as a Ruby Gem. You can download and install RIDL as a Ruby Gem from the common Rubygems.org repository by executing the following command:

$ gem install ridl

The RIDL Gem is a Ruby-only Gem without any dependencies.

A new RIDL ruby gem release can be made by incrementing the RIDL version in lib/ridl/version.rb and create a new release on github matching the new version (for example v2.7.0). The github Ruby Gem Release action will automatically create a new gem and push it to Rubygems.org.

The file ‘lib/ridl/parser.rb` can be regenerated using `racc -o parser.rb -F -E parser.ry`. The option `-E` embeds the racc parser within RIDL which is required for RIDL because jruby doesn’t contain ‘RACC` as cruby does.

Sponsor this project

 

Contributors 4

  •  
  •  
  •  
  •  

Languages