Module cranelift_isle::trie_again

source ·
Expand description

A strongly-normalizing intermediate representation for ISLE rules. This representation is chosen to closely reflect the operations we can implement in Rust, to make code generation easy.

Structs§

Enums§

  • Bindings are anything which can be bound to a variable name in Rust. This includes expressions, such as constants or function calls; but it also includes names bound in pattern matches.
  • Pattern matches which can fail. Some binding sites are the result of successfully matching a constraint. A rule applies constraints to binding sites to determine whether the rule matches.
  • Records whether a given pair of rules can both match on some input.

Functions§

  • Construct a RuleSet for each term in termenv that has rules.