public final class PrimitiveSyntesizer extends LogWriter implements TranslatorHandler<Ir>
PrimitiveSyntesizer
class provides facilities to analyze information on relations
between operations and to synthesize on its basis the following elements:
Shortcuts for leaf (have no child operations) and junction (have more than one child operations) operations that allow addressing (instantiating with all required parent operations) these operation in various contexts. A shortcut can be synthesized if there is an unambiguous way to resolve all dependencies of parent operations on the way from an entry operation to a target operation. Shortcuts are added to IR of corresponding target operations.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ROOT_ID
Name for the fake operation (OR rule) that unites all root operations described in the
specification (AND rules that have no parents).
|
Constructor and Description |
---|
PrimitiveSyntesizer(Translator<Ir> translator)
Constructs a PrimitiveSyntesizer object.
|
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
getSourceName() |
void |
processIr(Ir ir) |
reportError, reportWarning
public static final java.lang.String ROOT_ID
public PrimitiveSyntesizer(Translator<Ir> translator)
translator
- Translator that constructed the internal representation.java.lang.IllegalArgumentException
- if any of the parameters equals null.protected java.lang.String getSourceName()
getSourceName
in class LogWriter
public void processIr(Ir ir)
processIr
in interface TranslatorHandler<Ir>