Registers an inference rule. When inferring the type for a language node, all registered inference rules are checked until the first match.
a new inference rule
Optional
boundToType: Typean optional type, if the new inference rule is dedicated for exactly this type. If the given type is removed from the type system, this rule will be automatically removed as well.
Infers a type for the given language node.
the language node whose type shall be inferred
the found Type or some inference problems (might be empty), when none of the inference rules were able to infer a type
Optional
boundToType: Type
Collects an arbitrary number of inference rules and allows to infer a type for a given language node.