zerodds-idl

What it was

The OMG IDL 4.2 (ISO/IEC 19516:2020) parser of ZeroDDS up to 1.0.0-rc.6: grammar, AST and semantic model in one crate, read by the code generators zerodds-idl-{cpp,csharp,java,rust,ts}.

Replacement in 1.0.0-rc.7

The front end is split into stages, each a crate of its own. IDL is lowered into a common model that every backend reads:

On the command line, zerodds-idlc check parses and lowers a file and reports every diagnostic.

Command reference: idlc, zerodds-idlc(1).

Migration

The list of removed crates and the migration to their successors: CHANGELOG, [1.0.0-rc.7], section “Removed”.

zerodds-idl

Was die Crate war

Der Parser für OMG IDL 4.2 (ISO/IEC 19516:2020) von ZeroDDS bis 1.0.0-rc.6: Grammatik, AST und semantisches Modell in einer Crate, gelesen von den Codegeneratoren zerodds-idl-{cpp,csharp,java,rust,ts}.

Ersatz in 1.0.0-rc.7

Das Frontend ist in Stufen geteilt, jede eine eigene Crate. IDL wird in ein gemeinsames Modell abgesenkt, das jedes Backend liest:

  • zerodds-idl-parse — Lexer, Präprozessor und ein Parser für OMG IDL 4.2, der nach Fehlern weiterliest.
  • zerodds-idl-cst — der verlustfreie konkrete Syntaxbaum, den der Parser baut.
  • zerodds-idl-lower — Gültigkeitsbereiche, Namensbindung, Auflösung und IDL-Prüfung; senkt den Baum in den gemeinsamen AST ab.
  • zerodds-ast — der gemeinsame AST, gespeichert in zerodds-ast-core.
  • zerodds-ast-layout — Layoutpläne für die Kodierung über dem gemeinsamen AST.
  • zerodds-idl-compose — ein Aufruf von einer IDL-Datei zum Modell und seinen registrierten Typobjekten, für build.rs und die Kommandozeile.

Auf der Kommandozeile parst zerodds-idlc check eine Datei, senkt sie ab und meldet jede Diagnose.

Befehlsreferenz: idlc, zerodds-idlc(1).

Migration

Die Liste der entfallenen Crates und die Migration zu ihren Nachfolgern: CHANGELOG, [1.0.0-rc.7], Abschnitt „Removed“.