Class Node

java.lang.Object
com.strobel.decompiler.ast.Node
Direct Known Subclasses:
BasicBlock, Block, Condition, Expression, Label, Lambda, Loop, Switch, TryCatchBlock

public abstract class Node extends Object
  • Field Details

    • NULL

      public static final Node NULL
  • Constructor Details

    • Node

      public Node()
  • Method Details

    • writeTo

      public abstract void writeTo(ITextOutput output)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • isConditionalControlFlow

      public final boolean isConditionalControlFlow()
    • isUnconditionalControlFlow

      public final boolean isUnconditionalControlFlow()
    • getChildren

      public List<Node> getChildren()
    • getSelfAndChildrenRecursive

      public final List<Node> getSelfAndChildrenRecursive()
    • getSelfAndChildrenRecursive

      public final List<Node> getSelfAndChildrenRecursive(Predicate<Node> predicate)
    • getSelfAndChildrenRecursive

      public final List<Node> getSelfAndChildrenRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)
    • getSelfAndChildrenRecursive

      public final <T extends Node> List<T> getSelfAndChildrenRecursive(Class<T> type)
    • getSelfAndChildrenRecursive

      public final <T extends Node> List<T> getSelfAndChildrenRecursive(Class<T> type, Predicate<? super T> predicate)
    • getChildrenAndSelfRecursive

      public final List<Node> getChildrenAndSelfRecursive()
    • getChildrenAndSelfRecursive

      public final List<Node> getChildrenAndSelfRecursive(Predicate<Node> predicate)
    • getChildrenAndSelfRecursive

      public final List<Node> getChildrenAndSelfRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)
    • getChildrenAndSelfRecursive

      public final <T extends Node> List<T> getChildrenAndSelfRecursive(Class<T> type)
    • getChildrenAndSelfRecursive

      public final <T extends Node> List<T> getChildrenAndSelfRecursive(Class<T> type, Predicate<? super T> predicate)
    • accumulateSelfAndChildrenRecursive

      private <T extends Node> void accumulateSelfAndChildrenRecursive(List<T> list, Class<T> type, Predicate<? super T> predicate, boolean childrenFirst, boolean skipChildrenOfFilteredNodes)