Class Node

java.lang.Object
de.mirkosertic.bytecoder.core.ir.Node
Direct Known Subclasses:
ControlTokenConsumer, Value

public abstract class Node extends Object
  • Field Details

    • incomingDataFlows

      public Node[] incomingDataFlows
    • error

      boolean error
    • owner

      final Graph owner
    • nodeType

      public final NodeType nodeType
  • Constructor Details

  • Method Details

    • additionalDebugInfo

      public String additionalDebugInfo()
    • addIncomingData

      public void addIncomingData(Node... nodes)
    • outgoingDataFlows

      public Node[] outgoingDataFlows()
    • remapDataFlow

      public final void remapDataFlow(Node original, Node newValue)
    • isConstant

      public boolean isConstant()
    • hasSideEffectInternal

      private boolean hasSideEffectInternal(Set<Node> visited)
    • hasSideSideEffect

      public boolean hasSideSideEffect()
    • hasSideSideEffectRecursive

      public boolean hasSideSideEffectRecursive()
    • stampInto

      public abstract <T extends Node> T stampInto(Graph target)
    • sanityCheck

      public void sanityCheck()
    • removeFromIncomingData

      public void removeFromIncomingData(Node workingItem)