Crate regen

source ·
Expand description

Regen

Regen is a language that defines a language. See README on GitHub

Modules

  • Core definition of the domain objects that are used to represent the Regen language
  • Utils for dynamically generate AST for source code based on the Language object. Note that this only includes up to the AST, since parse tree hooks cannot be executed dynamically.
  • Functionality to generate output from the Language struct.
  • Generated static implementation of the Regen language, generated by Regen itself
  • Generic implementations of functions and objects that are used to parse plain text into application specific objects.

Macros

  • Generate union implementation for a union rule. Used in generated code.
  • helper for parsing a list of parameters using a TokenStream
  • Util macro to merge first and rest in a parse tree.
  • Util macro to merge first and rest in a parse tree.
  • Helper for parsing an optional parameter using a TokenStream
  • Helper for parsing a required parameter using a TokenStream
  • Macro that implements the language SDK.
  • Convenience macro for casting enum variants for AST and PT.

Functions