Class IrVisitorDefault

  • All Implemented Interfaces:
    ru.ispras.fortress.util.TreeVisitor, IrVisitor

    public class IrVisitorDefault
    extends java.lang.Object
    implements IrVisitor
    • Constructor Detail

      • IrVisitorDefault

        public IrVisitorDefault()
    • Method Detail

      • getStatus

        public final ru.ispras.fortress.util.TreeVisitor.Status getStatus()
        Specified by:
        getStatus in interface ru.ispras.fortress.util.TreeVisitor
      • setStatus

        public final void setStatus​(ru.ispras.fortress.util.TreeVisitor.Status status)
        Specified by:
        setStatus in interface IrVisitor
      • isStatus

        public final boolean isStatus​(ru.ispras.fortress.util.TreeVisitor.Status status)
      • onBegin

        public void onBegin()
        Specified by:
        onBegin in interface ru.ispras.fortress.util.TreeVisitor
      • onEnd

        public void onEnd()
        Specified by:
        onEnd in interface ru.ispras.fortress.util.TreeVisitor
      • onResourcesBegin

        public void onResourcesBegin()
        Description copied from interface: IrVisitor
        Notifies that traversing the resource section has been started. The section includes constants, types and memory storages.
        Specified by:
        onResourcesBegin in interface IrVisitor
      • onResourcesEnd

        public void onResourcesEnd()
        Description copied from interface: IrVisitor
        Notifies that traversing the resource section has been finished.
        Specified by:
        onResourcesEnd in interface IrVisitor
      • onLetConstant

        public void onLetConstant​(LetConstant let)
        Description copied from interface: IrVisitor
        Notifies that a let construct describing a constant value has been visited.
        Specified by:
        onLetConstant in interface IrVisitor
        Parameters:
        let - Object describing the constant.
      • onLetLabel

        public void onLetLabel​(LetLabel let)
        Description copied from interface: IrVisitor
        Notifies that a let construct associates a symbolic name with a memory location (in other words, establishes a label).
        Specified by:
        onLetLabel in interface IrVisitor
        Parameters:
        let - Object describing the label associated with a memory location.
      • onType

        public void onType​(java.lang.String name,
                           Type type)
        Description copied from interface: IrVisitor
        Notifies that a type has been visited.
        Specified by:
        onType in interface IrVisitor
        Parameters:
        name - Type name.
        type - Type description.
      • onMemory

        public void onMemory​(java.lang.String name,
                             MemoryResource memory)
        Description copied from interface: IrVisitor
        Notifies that a memory storage has been visited.
        Specified by:
        onMemory in interface IrVisitor
        Parameters:
        name - Memory storage name.
        memory - Memory storage description.
      • onPrimitivesBegin

        public void onPrimitivesBegin()
        Description copied from interface: IrVisitor
        Notifies that visiting primitives (objects describing MODEs and OPs) has been started.
        Specified by:
        onPrimitivesBegin in interface IrVisitor
      • onPrimitivesEnd

        public void onPrimitivesEnd()
        Description copied from interface: IrVisitor
        Notifies that visiting primitives (objects describing MODEs and OPs) has been finished.
        Specified by:
        onPrimitivesEnd in interface IrVisitor
      • onPrimitiveBegin

        public void onPrimitiveBegin​(Primitive item)
        Description copied from interface: IrVisitor
        Notifies that visiting a primitive (object describing a MODE or OP) has been started.
        Specified by:
        onPrimitiveBegin in interface IrVisitor
        Parameters:
        item - Primitive object describing a MODE or OP.
      • onPrimitiveEnd

        public void onPrimitiveEnd​(Primitive item)
        Description copied from interface: IrVisitor
        Notifies that visiting a primitive has been finished.
        Specified by:
        onPrimitiveEnd in interface IrVisitor
        Parameters:
        item - Primitive object.
      • onAlternativeBegin

        public void onAlternativeBegin​(PrimitiveOr orRule,
                                       Primitive item)
        Description copied from interface: IrVisitor
        Notifies that visiting an item of an OR-rule has been started.
        Specified by:
        onAlternativeBegin in interface IrVisitor
        Parameters:
        orRule - OR-rule description.
        item - Item being visited.
      • onAlternativeEnd

        public void onAlternativeEnd​(PrimitiveOr orRule,
                                     Primitive item)
        Description copied from interface: IrVisitor
        Notifies that visiting an item of an OR-rule has been finished.
        Specified by:
        onAlternativeEnd in interface IrVisitor
        Parameters:
        orRule - OR-rule description.
        item - Item being visited.
      • onArgumentBegin

        public void onArgumentBegin​(PrimitiveAnd andRule,
                                    java.lang.String argName,
                                    Primitive argType)
        Description copied from interface: IrVisitor
        Notifies that visiting an AND-rule argument has been started.
        Specified by:
        onArgumentBegin in interface IrVisitor
        Parameters:
        andRule - AND-rule description.
        argName - Argument name.
        argType - Argument type description.
      • onArgumentEnd

        public void onArgumentEnd​(PrimitiveAnd andRule,
                                  java.lang.String argName,
                                  Primitive argType)
        Description copied from interface: IrVisitor
        Notifies that visiting an AND-rule argument has been finished.
        Specified by:
        onArgumentEnd in interface IrVisitor
        Parameters:
        andRule - AND-rule description.
        argName - Argument name.
        argType - Argument type description.
      • onAttributeBegin

        public void onAttributeBegin​(PrimitiveAnd andRule,
                                     Attribute attr)
        Description copied from interface: IrVisitor
        Notifies that visiting an attribute of an AND-rule has been started.
        Specified by:
        onAttributeBegin in interface IrVisitor
        Parameters:
        andRule - AND-rule description.
        attr - Attribute description.
      • onAttributeEnd

        public void onAttributeEnd​(PrimitiveAnd andRule,
                                   Attribute attr)
        Description copied from interface: IrVisitor
        Notifies that visiting an attribute of an AND-rule has been finished.
        Specified by:
        onAttributeEnd in interface IrVisitor
        Parameters:
        andRule - AND-rule description.
        attr - Attribute description.
      • onStatementBegin

        public void onStatementBegin​(PrimitiveAnd andRule,
                                     Attribute attr,
                                     Statement stmt)
        Description copied from interface: IrVisitor
        Notifies that visiting a statement (in an attribute) has been started.
        Specified by:
        onStatementBegin in interface IrVisitor
        Parameters:
        andRule - AND-rule that contains the statement.
        attr - Attribute that contains the statement.
        stmt - Statement description.
      • onStatementEnd

        public void onStatementEnd​(PrimitiveAnd andRule,
                                   Attribute attr,
                                   Statement stmt)
        Description copied from interface: IrVisitor
        Notifies that visiting a statement (in an attribute) has been finished.
        Specified by:
        onStatementEnd in interface IrVisitor
        Parameters:
        andRule - AND-rule that contains the statement.
        attr - Attribute that contains the statement.
        stmt - Statement description.
      • onShortcutBegin

        public void onShortcutBegin​(PrimitiveAnd andRule,
                                    Shortcut shortcut)
        Description copied from interface: IrVisitor
        Notifies that visiting a shortcut has been started.
        Specified by:
        onShortcutBegin in interface IrVisitor
        Parameters:
        andRule - AND-rule the shortcut refers to.
        shortcut - Shortcut description.
      • onShortcutEnd

        public void onShortcutEnd​(PrimitiveAnd andRule,
                                  Shortcut shortcut)
        Description copied from interface: IrVisitor
        Notifies that visiting a shortcut has been finished.
        Specified by:
        onShortcutEnd in interface IrVisitor
        Parameters:
        andRule - AND-rule the shortcut refers to.
        shortcut - Shortcut description.
      • onConditionBlockBegin

        public void onConditionBlockBegin​(ru.ispras.fortress.expression.Node condition)
        Specified by:
        onConditionBlockBegin in interface IrVisitor
      • onConditionBlockEnd

        public void onConditionBlockEnd​(ru.ispras.fortress.expression.Node condition)
        Specified by:
        onConditionBlockEnd in interface IrVisitor