Uses of Class
com.strobel.decompiler.ast.Node
-
Packages that use Node Package Description com.strobel.decompiler.ast com.strobel.decompiler.languages.java.ast -
-
Uses of Node in com.strobel.decompiler.ast
Subclasses of Node in com.strobel.decompiler.ast Modifier and Type Class Description classBasicBlockclassBlockclassCaseBlockclassCatchBlockclassConditionclassExpressionclassLabelclassLambdaclassLoopclassSwitchclassTryCatchBlockFields in com.strobel.decompiler.ast declared as Node Modifier and Type Field Description static NodeNode. NULLFields in com.strobel.decompiler.ast with type parameters of type Node Modifier and Type Field Description private Collection<Node>BasicBlock. _bodyprivate Collection<Node>Block. _body(package private) java.util.Map<Label,Node>GotoRemoval. labelLookup(package private) java.util.Map<Node,Label>GotoRemoval. labels(package private) java.util.Map<Node,Node>GotoRemoval. nextSibling(package private) java.util.Map<Node,Node>GotoRemoval. nextSiblingprivate static Predicate<Node>AstBuilder. NOT_A_LABEL_OR_NOP(package private) java.util.Map<Node,Node>GotoRemoval. parentLookup(package private) java.util.Map<Node,Node>GotoRemoval. parentLookupMethods in com.strobel.decompiler.ast with type parameters of type Node Modifier and Type Method Description private <T extends Node>
voidNode. accumulateSelfAndChildrenRecursive(java.util.List<T> list, java.lang.Class<T> type, Predicate<? super T> predicate, boolean childrenFirst, boolean skipChildrenOfFilteredNodes)<T extends Node>
java.util.List<T>Node. getChildrenAndSelfRecursive(java.lang.Class<T> type)<T extends Node>
java.util.List<T>Node. getChildrenAndSelfRecursive(java.lang.Class<T> type, Predicate<? super T> predicate)private <T extends Node>
java.lang.Iterable<T>GotoRemoval. getParents(Node node, java.lang.Class<T> parentType)<T extends Node>
java.util.List<T>Node. getSelfAndChildrenRecursive(java.lang.Class<T> type)<T extends Node>
java.util.List<T>Node. getSelfAndChildrenRecursive(java.lang.Class<T> type, Predicate<? super T> predicate)Methods in com.strobel.decompiler.ast that return Node Modifier and Type Method Description private NodeGotoRemoval. enter(Node node, java.util.Set<Node> visitedNodes)private NodeGotoRemoval. exit(Node node, java.util.Set<Node> visitedNodes)Methods in com.strobel.decompiler.ast that return types with arguments of type Node Modifier and Type Method Description static java.util.List<Node>AstBuilder. build(MethodBody body, boolean optimize, DecompilerContext context)private java.util.List<Node>AstBuilder. convertToAst(java.util.List<AstBuilder.ByteCode> body)private java.util.List<Node>AstBuilder. convertToAst(java.util.List<AstBuilder.ByteCode> body, java.util.Set<ExceptionHandler> exceptionHandlers, int startIndex, MutableInteger endIndex)private java.util.List<Node>LoopsAndConditions. findConditions(java.util.Set<ControlFlowNode> scopeNodes, ControlFlowNode entryNode)private java.util.List<Node>LoopsAndConditions. findLoops(java.util.Set<ControlFlowNode> scopeNodes, ControlFlowNode entryPoint, boolean excludeEntryPoint)java.util.List<Node>BasicBlock. getBody()java.util.List<Node>Block. getBody()java.util.List<Node>BasicBlock. getChildren()java.util.List<Node>Block. getChildren()java.util.List<Node>Condition. getChildren()java.util.List<Node>Expression. getChildren()java.util.List<Node>Lambda. getChildren()java.util.List<Node>Loop. getChildren()java.util.List<Node>Node. getChildren()java.util.List<Node>Switch. getChildren()java.util.List<Node>TryCatchBlock. getChildren()java.util.List<Node>Node. getChildrenAndSelfRecursive()java.util.List<Node>Node. getChildrenAndSelfRecursive(Predicate<Node> predicate)java.util.List<Node>Node. getChildrenAndSelfRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)private java.lang.Iterable<Node>GotoRemoval. getParents(Node node)java.util.List<Node>Node. getSelfAndChildrenRecursive()java.util.List<Node>Node. getSelfAndChildrenRecursive(Predicate<Node> predicate)java.util.List<Node>Node. getSelfAndChildrenRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)Methods in com.strobel.decompiler.ast with parameters of type Node Modifier and Type Method Description (package private) voidInlining. analyzeNode(Node node)private booleanAstOptimizer.MakeAssignmentExpressionsOptimization. canConvertStoreToAssignment(Node store, Variable variable)private LabelAstOptimizer. checkExit(Node node)private static booleanAstOptimizer. containsMatch(Node node, Expression pattern)private voidTypeAnalysis. createDependencyGraph(Node node)private NodeGotoRemoval. enter(Node node, java.util.Set<Node> visitedNodes)private NodeGotoRemoval. exit(Node node, java.util.Set<Node> visitedNodes)static java.lang.RuntimeExceptionError. expressionLinkedFromMultipleLocations(Node node)private static booleanAstOptimizer. flattenBasicBlocks(Node node)private java.lang.Iterable<Node>GotoRemoval. getParents(Node node)private <T extends Node>
java.lang.Iterable<T>GotoRemoval. getParents(Node node, java.lang.Class<T> parentType)(package private) booleanInlining. inlineIfPossible(Variable variable, Expression inlinedExpression, Node next, boolean aggressive)private static voidAstOptimizer. inlineLockAccess(Node owner, java.util.List<Node> body, LockInfo lockInfo)private ExpressionAstOptimizer.IntroducePostIncrementOptimization. introducePostIncrementForInstanceFields(Expression e, Node previous)static booleanPatternMatching. match(Node node, AstCode code)static booleanPatternMatching. matchAssignment(Node node, StrongBox<Expression> assignedValue)static booleanPatternMatching. matchAssignment(Node node, StrongBox<Expression> assignedValue, StrongBox<Expression> equivalentLoad)static booleanPatternMatching. matchBooleanComparison(Node node, StrongBox<Expression> argument, StrongBox<java.lang.Boolean> comparand)static java.lang.BooleanPatternMatching. matchBooleanConstant(Node node)static booleanPatternMatching. matchBooleanConstant(Node node, Consumer<? super java.lang.Boolean> value)static java.lang.CharacterPatternMatching. matchCharacterConstant(Node node)static booleanPatternMatching. matchCharacterConstant(Node node, Consumer<? super java.lang.Character> value)static booleanPatternMatching. matchComparison(Node node, StrongBox<Expression> left, StrongBox<Expression> right)private static booleanPatternMatching. matchElementAssignment(Node node, StrongBox<Expression> assignedValue, StrongBox<Expression> equivalentLoad)static booleanPatternMatching. matchEmptyBlockOrLeave(Node node)static booleanPatternMatching. matchEmptyReturn(Node node)static java.lang.BooleanPatternMatching. matchFalse(Node node)static <T> booleanPatternMatching. matchGetArgument(Node node, AstCode code, StrongBox<? super T> operand, StrongBox<Expression> argument)static booleanPatternMatching. matchGetArgument(Node node, AstCode code, StrongBox<Expression> argument)static <T> booleanPatternMatching. matchGetArguments(Node node, AstCode code, StrongBox<? super T> operand, StrongBox<Expression> argument1, StrongBox<Expression> argument2)static <T> booleanPatternMatching. matchGetArguments(Node node, AstCode code, StrongBox<? super T> operand, java.util.List<Expression> arguments)static booleanPatternMatching. matchGetArguments(Node node, AstCode code, java.util.List<Expression> arguments)static <T> booleanPatternMatching. matchGetOperand(Node node, AstCode code, Consumer<? super T> operand)static <T> booleanPatternMatching. matchGetOperand(Node node, AstCode code, java.lang.Class<T> operandType, StrongBox<? super T> operand)static booleanPatternMatching. matchIntegralConstant(Node node, Consumer<? super java.lang.Long> constant)static booleanPatternMatching. matchLeaveHandler(Node node)static booleanPatternMatching. matchLoad(Node node, Predicate<? super Variable> condition)static booleanPatternMatching. matchLoad(Node node, StrongBox<? super java.lang.Object> temp, Predicate<? super Variable> condition)static booleanPatternMatching. matchLoad(Node node, Variable expectedVariable)static booleanPatternMatching. matchLoad(Node node, Variable expectedVariable, StrongBox<Expression> argument)static booleanPatternMatching. matchLoad(Node node, Consumer<? super Variable> variable)static booleanPatternMatching. matchLoadAny(Node node, java.lang.Iterable<Variable> expectedVariables)static booleanPatternMatching. matchLoadOrRet(Node node, StrongBox<Variable> variable)static booleanPatternMatching. matchLoadStore(Node node, Variable expectedVariable, StrongBox<Variable> targetVariable)static booleanPatternMatching. matchLoadStoreAny(Node node, java.lang.Iterable<Variable> expectedVariables, StrongBox<Variable> targetVariable)static booleanPatternMatching. matchNumericConstant(Node node, Consumer<? super java.lang.Number> constant)static booleanPatternMatching. matchNumericLdC(Node node, StrongBox<? super java.lang.Number> value)static booleanPatternMatching. matchReturnOrThrow(Node node)static booleanPatternMatching. matchReversibleComparison(Node node)static booleanPatternMatching. matchSimplifiableComparison(Node node)static booleanPatternMatching. matchStore(Node node, StrongBox<Variable> variable, StrongBox<Expression> argument)static booleanPatternMatching. matchStore(Node node, StrongBox<Variable> variable, java.util.List<Expression> argument)static booleanPatternMatching. matchStore(Node node, Variable expectedVariable)static booleanPatternMatching. matchStore(Node node, Variable expectedVariable, StrongBox<Expression> value)static booleanPatternMatching. matchThis(Node node)static java.lang.BooleanPatternMatching. matchTrue(Node node)static booleanPatternMatching. matchUnconditionalBranch(Node node)static booleanPatternMatching. matchUnlock(Node e, LockInfo lockInfo)static booleanPatternMatching. matchVariableIncDec(Node node, StrongBox<Variable> variable)static booleanPatternMatching. matchVariableIncDec(Node node, StrongBox<Variable> variable, StrongBox<java.lang.Number> amount)static booleanPatternMatching. matchVariableMutation(Node node, Variable variable)private static voidAstOptimizer. reduceIfNesting(Node node)(package private) static booleanAstOptimizer. references(Node node, Variable v)static voidAstOptimizer. replaceVariables(Node node, Function<Variable,Variable> mapping)private booleanGotoRemoval. tryInlineReturn(Expression gotoExpression, Node target, AstCode code)static java.lang.RuntimeExceptionError. unsupportedNode(Node node)Method parameters in com.strobel.decompiler.ast with type arguments of type Node Modifier and Type Method Description private ControlFlowGraphLoopsAndConditions. buildGraph(java.util.List<Node> nodes, Label entryLabel)private NodeGotoRemoval. enter(Node node, java.util.Set<Node> visitedNodes)private NodeGotoRemoval. exit(Node node, java.util.Set<Node> visitedNodes)java.util.List<Node>Node. getChildrenAndSelfRecursive(Predicate<Node> predicate)java.util.List<Node>Node. getChildrenAndSelfRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)java.util.List<Node>Node. getSelfAndChildrenRecursive(Predicate<Node> predicate)java.util.List<Node>Node. getSelfAndChildrenRecursive(Predicate<Node> predicate, boolean skipChildrenOfFilteredNodes)(package private) booleanInlining. inlineIfPossible(java.util.List<Node> body, MutableInteger position)(package private) intInlining. inlineInto(java.util.List<Node> body, int position, boolean aggressive)private static voidAstOptimizer. inlineLockAccess(Node owner, java.util.List<Node> body, LockInfo lockInfo)(package private) booleanInlining. inlineOneIfPossible(java.util.List<Node> body, int position, boolean aggressive)private booleanAstOptimizer.IntroducePostIncrementOptimization. introducePostIncrementForVariables(java.util.List<Node> body, Expression e, int position)private static booleanAstOptimizer. introducePreIncrementForInstanceFields(java.util.List<Node> body, MutableInteger position, Inlining inlining)private static booleanAstOptimizer. introducePreIncrementForStaticFields(java.util.List<Node> body, MutableInteger position, Inlining inlining)private static booleanAstOptimizer. introducePreIncrementForVariables(java.util.List<Node> body, MutableInteger position)private static <T> booleanPatternMatching. matchLast(java.util.List<Node> body, AstCode code, StrongBox<? super T> operand, StrongBox<Expression> argument)static booleanPatternMatching. matchLock(java.util.List<Node> body, int position, Consumer<? super LockInfo> result)(package private) static voidAstOptimizer. removeTail(java.util.List<Node> body, AstCode... codes)booleanAstOptimizer.AbstractBranchBlockOptimization. run(java.util.List<Node> body, BasicBlock head, int position)protected abstract booleanAstOptimizer.AbstractBranchBlockOptimization. run(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, boolean negate)booleanAstOptimizer.BasicBlockOptimization. run(java.util.List<Node> body, BasicBlock head, int position)booleanAstOptimizer.ExpressionOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.InlineConditionalAssignmentsOptimization. run(java.util.List<Node> body, BasicBlock head, int position)booleanAstOptimizer.InlineLambdasOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.IntroducePostIncrementOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.JoinBasicBlocksOptimization. run(java.util.List<Node> body, BasicBlock head, int position)protected booleanAstOptimizer.JoinBranchConditionsOptimization. run(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, boolean negate)booleanAstOptimizer.MakeAssignmentExpressionsOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.PreProcessShortCircuitAssignmentsOptimization. run(java.util.List<Node> body, BasicBlock head, int position)booleanAstOptimizer.RemoveInnerClassAccessNullChecksOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.SimplifyLogicalNotOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.SimplifyShortCircuitOptimization. run(java.util.List<Node> body, BasicBlock head, int position)booleanAstOptimizer.SimplifyTernaryOperatorOptimization. run(java.util.List<Node> body, BasicBlock head, int position)booleanAstOptimizer.SimplifyTernaryOperatorRoundTwoOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.TransformArrayInitializersOptimization. run(java.util.List<Node> body, Expression head, int position)booleanAstOptimizer.TransformObjectInitializersOptimization. run(java.util.List<Node> body, Expression head, int position)private booleanAstOptimizer.JoinBranchConditionsOptimization. runCore(java.util.List<Node> body, BasicBlock branchBlock, Expression branchCondition, Label thenLabel, Label elseLabel, Expression elseCondition, boolean negateFirst, Label elseThenLabel, Label elseElseLabel, boolean negateSecond)private booleanAstOptimizer.TransformArrayInitializersOptimization. tryRefineArrayInitialization(java.util.List<Node> body, Expression head, int position)Constructors in com.strobel.decompiler.ast with parameters of type Node Constructor Description Block(Node... body)Constructor parameters in com.strobel.decompiler.ast with type arguments of type Node Constructor Description Block(java.lang.Iterable<Node> body) -
Uses of Node in com.strobel.decompiler.languages.java.ast
Methods in com.strobel.decompiler.languages.java.ast with parameters of type Node Modifier and Type Method Description private StatementAstMethodBodyBuilder. transformNode(Node node, Node next)
-