Skip to content
/ tools Public

Slang Utility/CodeGen Tools

Notifications You must be signed in to change notification settings

sireum/tools

Repository files navigation

Sireum Utility Tools

Actions Status
amd64: mac, linux, windows maven package repository

This repository holds various Sireum utility tools:

  • Sergen: JSON and MessagePack de/serializer generator from Slang datatype definitions

    As an example, for Slang AST and symbol information:

  • Trafo: Transformer (visitor and rewriter) generator from Slang datatype definitions

    As an example, for Slang AST:

  • Cligen: Command-line option parser generator from Slang datatype objects

    As an example, Sireum CLI config datatype structure:

    • Generated CLI

Note that the generators and the generated code are Slang programs.

Testing

  • macOS/Linux

    bin/build.cmd test
  • Windows

    bin\build.cmd test

The test run checks generated code such as the ones mentioned above do not change when re-generated.