Uses of Class
com.strobel.decompiler.languages.java.ast.AstNode
Packages that use AstNode
Package
Description
-
Uses of AstNode in com.strobel.decompiler.languages.java
Fields in com.strobel.decompiler.languages.java with type parameters of type AstNodeModifier and TypeFieldDescriptionJavaOutputVisitor.containerStack
TextOutputFormatter.nodeStack
JavaOutputVisitor.positionStack
Methods in com.strobel.decompiler.languages.java with parameters of type AstNodeModifier and TypeMethodDescription(package private) void
(package private) void
void
(package private) void
void
private boolean
JavaOutputVisitor.isBitwiseContext
(AstNode parent, AstNode node) private static boolean
TextOutputFormatter.isDefinition
(AstNode node) private boolean
TextOutputFormatter.isImportDeclaration
(AstNode node) static boolean
void
(package private) void
void
JavaOutputVisitor.visitPatternPlaceholder
(AstNode node, Pattern pattern, Void ignored) private void
JavaOutputVisitor.writeSpecials
(AstNode start, AstNode end) private void
JavaOutputVisitor.writeSpecialsUpToNode
(AstNode node) private void
JavaOutputVisitor.writeSpecialsUpToRole
(Role<?> role, AstNode nextNode) Method parameters in com.strobel.decompiler.languages.java with type arguments of type AstNodeModifier and TypeMethodDescriptionprivate void
JavaOutputVisitor.writeCommaSeparatedList
(Iterable<? extends AstNode> list) private void
JavaOutputVisitor.writeCommaSeparatedListInParenthesis
(Iterable<? extends AstNode> list, boolean spaceWithin) private void
JavaOutputVisitor.writePipeSeparatedList
(Iterable<? extends AstNode> list) -
Uses of AstNode in com.strobel.decompiler.languages.java.analysis
Fields in com.strobel.decompiler.languages.java.analysis with type parameters of type AstNodeModifier and TypeFieldDescriptionprivate Function
<AstNode, ResolveResult> ControlFlowGraphBuilder.resolver
Methods in com.strobel.decompiler.languages.java.analysis with parameters of type AstNodeModifier and TypeMethodDescriptionprivate static void
Correlator.collectCorrelations
(AstNode node, Correlator.CorrelationMode mode, Collection<IMetadataTypeMember> members) protected ControlFlowNode
ControlFlowGraphBuilder.NodeCreationVisitor.visitChildren
(AstNode node, ControlFlowNode data) Method parameters in com.strobel.decompiler.languages.java.analysis with type arguments of type AstNodeModifier and TypeMethodDescriptionControlFlowGraphBuilder.buildControlFlowGraph
(Statement statement, Function<AstNode, ResolveResult> resolver) -
Uses of AstNode in com.strobel.decompiler.languages.java.ast
Classes in com.strobel.decompiler.languages.java.ast with type parameters of type AstNodeSubclasses of AstNode in com.strobel.decompiler.languages.java.astModifier and TypeClassDescriptionclass
class
class
class
private static final class
class
class
class
private static final class
private static final class
class
private static final class
private static final class
class
class
private static final class
private static final class
class
class
private static final class
class
class
class
private static final class
private static final class
final class
class
(package private) final class
class
class
class
class
class
class
final class
class
class
class
private static final class
private static final class
class
class
class
class
class
class
private static final class
class
class
class
private static final class
class
class
private static final class
class
class
class
class
class
class
private static final class
class
class
class
class
final class
class
class
private static final class
class
final class
class
private static final class
class
final class
class
class
private static final class
class
private static final class
class
class
class
class
class
class
private static final class
private static final class
final class
class
private static final class
class
private static final class
class
class
class
class
final class
class
class
class
private static final class
class
class
class
class
final class
class
class
private static final class
private static final class
class
class
final class
Fields in com.strobel.decompiler.languages.java.ast declared as AstNodeModifier and TypeFieldDescriptionprivate AstNode
AstNode._firstChild
private AstNode
AstNode._lastChild
private AstNode
AstNode._nextSibling
private final AstNode
AstNodeCollection._node
private AstNode
AstNode._parent
private AstNode
AstNode._previousSibling
private AstNode
InliningHelper.InliningVisitor._result
private AstNode
CompilationUnit._topExpression
static final AstNode
AstNode.NULL
Fields in com.strobel.decompiler.languages.java.ast with type parameters of type AstNodeModifier and TypeFieldDescriptionprivate final Map
<ParameterDefinition, ? extends AstNode> InliningHelper.InliningVisitor._argumentMappings
LocalClassHelper.ClosureRewriterPhaseOneVisitor._nodesToRemove
LambdaExpression.BODY_ROLE
InsertParenthesesVisitor.PARENTHESIZE_FUNCTION
InsertParenthesesVisitor.PARENTHESIZE_FUNCTION
private final Function
<AstNode, ResolveResult> DefiniteAssignmentAnalysis.resolver
Roles.Root
AstNode.ROOT_ROLE
Methods in com.strobel.decompiler.languages.java.ast with type parameters of type AstNodeModifier and TypeMethodDescriptionfinal <T extends AstNode>
voidAstNode.getAncestors
(Class<T> type) final <T extends AstNode>
TAstNode.getChildByRole
(Role<? extends T> role) final <T extends AstNode>
AstNodeCollection<T> AstNode.getChildrenByRole
(Role<? extends T> role) final <T extends AstNode>
TAstNode.getNextSibling
(Role<? extends T> role) final <T extends AstNode>
Tfinal <T extends AstNode>
TAstNode.getPreviousSibling
(Role<? extends T> role) final <T extends AstNode>
voidAstNode.insertChildAfter
(AstNode previousSibling, T child, Role<? extends T> role) final <T extends AstNode>
voidAstNode.insertChildBefore
(AstNode nextSibling, T child, Role<? extends T> role) final <T extends AstNode>
voidAstNode.insertChildrenAfter
(AstNode nextSibling, Role<? extends T> role, T... children) final <T extends AstNode>
voidAstNode.insertChildrenBefore
(AstNode nextSibling, Role<? extends T> role, T... children) final <T extends AstNode>
TAstNode.replaceWith
(Function<? super AstNode, ? extends T> replaceFunction) protected final <T extends AstNode>
voidAstNode.setChildByRole
(Role<? extends T> role, T newChild) Methods in com.strobel.decompiler.languages.java.ast that return AstNodeModifier and TypeMethodDescriptionAstNode.clone()
static AstNode
AstNode.forPattern
(Pattern pattern) final AstNode
LambdaExpression.getBody()
final AstNode
AstNode.getFirstChild()
final AstNode
InliningHelper.InliningVisitor.getInlinedBody()
final AstNode
AstNode.getLastChild()
final AstNode
AstNode.getNextNode()
final AstNode
AstNode.getNextSibling()
final AstNode
AstNode.getParent()
final AstNode
AstNode.getPreviousNode()
final AstNode
AstNode.getPreviousSibling()
final AstNode
CompilationUnit.getTopExpression()
static AstNode
InliningHelper.inlineMethod
(MethodDeclaration method, Map<ParameterDefinition, ? extends AstNode> argumentMappings) private AstNode
AstMethodBodyBuilder.transformByteCode
(Expression byteCode, boolean isTopLevel) private AstNode
AstMethodBodyBuilder.transformExpression
(Expression e, boolean isTopLevel) Methods in com.strobel.decompiler.languages.java.ast that return types with arguments of type AstNodeModifier and TypeMethodDescriptionAstNode.getAncestors()
AstNode.getAncestorsAndSelf()
AstNode.getChildren()
AstNode.getDescendants()
AstNode.getDescendantsAndSelf()
AstNode.getRole()
Methods in com.strobel.decompiler.languages.java.ast with parameters of type AstNodeModifier and TypeMethodDescription(package private) final void
AstNode.addChildUnsafe
(AstNode child, Role<?> role) (package private) static void
EntityDeclaration.addModifier
(AstNode node, Flags.Flag modifier) private static <T> void
void
AstNode.copyUserDataFrom
(AstNode source) (package private) static List
<Flags.Flag> EntityDeclaration.getModifiers
(AstNode node) private void
DefiniteAssignmentAnalysis.insertAnonymousMethods
(int insertPosition, AstNode node, ControlFlowGraphBuilder builder) final <T extends AstNode>
voidAstNode.insertChildAfter
(AstNode previousSibling, T child, Role<? extends T> role) final <T extends AstNode>
voidAstNode.insertChildBefore
(AstNode nextSibling, T child, Role<? extends T> role) (package private) final void
AstNode.insertChildBeforeUnsafe
(AstNode nextSibling, AstNode child, Role<?> role) final <T extends AstNode>
voidAstNode.insertChildrenAfter
(AstNode nextSibling, Role<? extends T> role, T... children) final <T extends AstNode>
voidAstNode.insertChildrenAfter
(AstNode nextSibling, Role<? extends T> role, T... children) final <T extends AstNode>
voidAstNode.insertChildrenBefore
(AstNode nextSibling, Role<? extends T> role, T... children) final <T extends AstNode>
voidAstNode.insertChildrenBefore
(AstNode nextSibling, Role<? extends T> role, T... children) static void
LocalClassHelper.introduceInitializerBlocks
(DecompilerContext context, AstNode node) final boolean
AstNode.isAncestorOf
(AstNode node) final boolean
AstNode.isAncestorOf
(AstNode node, AstNode stopAt) final boolean
AstNode.isDescendantOf
(AstNode node) static boolean
static boolean
JavaNameResolver.isStaticContext
(AstNode node) static boolean
JavaNameResolver.isStaticContext
(AstNode node, boolean topLevelAreStatic, boolean considerMethods) static boolean
AstNode.isUnconditionalBranch
(AstNode statement) (package private) static boolean
EntityDeclaration.removeModifier
(AstNode node, Flags.Flag modifier) static void
CommentStatement.replaceAll
(AstNode tree) final void
AstNode.replaceWith
(AstNode newNode) static NameResolveResult
static NameResolveResult
JavaNameResolver.resolveAsType
(String name, AstNode node) JavaNameResolver.resolveCore
(AstNode location, String name, NameResolveMode mode) protected ResolveResult
JavaResolver.ResolveVisitor.resolveLambda
(AstNode node) JavaNameResolver.FindDeclarationVisitor.resolveName
(AstNode node, String name, NameResolveMode mode) void
void
final void
(package private) static void
EntityDeclaration.setModifiers
(AstNode node, Collection<Flags.Flag> modifiers) (package private) final void
CompilationUnit.setTopExpression
(AstNode topExpression) protected DefiniteAssignmentStatus
DefiniteAssignmentAnalysis.DefiniteAssignmentVisitor.visitChildren
(AstNode node, DefiniteAssignmentStatus data) protected S
DepthFirstAstVisitor.visitChildren
(AstNode node, T data) protected ResolveResult
JavaResolver.ResolveVisitor.visitChildren
(AstNode node, Void p) protected Void
LocalClassHelper.ClosureRewriterPhaseOneVisitor.visitChildren
(AstNode node, Void p) DepthFirstAstVisitor.visitPatternPlaceholder
(AstNode node, Pattern pattern, T data) IAstVisitor.visitPatternPlaceholder
(AstNode node, Pattern pattern, T data) JavaNameResolver.FindDeclarationVisitor.visitPatternPlaceholder
(AstNode node, Pattern pattern, String name) Method parameters in com.strobel.decompiler.languages.java.ast with type arguments of type AstNodeModifier and TypeMethodDescriptionstatic AstNode
InliningHelper.inlineMethod
(MethodDeclaration method, Map<ParameterDefinition, ? extends AstNode> argumentMappings) final <T extends AstNode>
TAstNode.replaceWith
(Function<? super AstNode, ? extends T> replaceFunction) Constructors in com.strobel.decompiler.languages.java.ast with parameters of type AstNodeConstructor parameters in com.strobel.decompiler.languages.java.ast with type arguments of type AstNodeModifierConstructorDescriptionDefiniteAssignmentAnalysis
(Statement rootStatement, Function<AstNode, ResolveResult> resolver) InliningVisitor
(DecompilerContext context, Map<ParameterDefinition, ? extends AstNode> argumentMappings) -
Uses of AstNode in com.strobel.decompiler.languages.java.ast.transforms
Fields in com.strobel.decompiler.languages.java.ast.transforms declared as AstNodeModifier and TypeFieldDescriptionprivate static final AstNode
RemoveHiddenMembersTransform.EMPTY_SUPER
(package private) AstNode
BreakTargetRelocation.LabelInfo.labelTarget
Fields in com.strobel.decompiler.languages.java.ast.transforms with type parameters of type AstNodeModifier and TypeFieldDescriptionAddReferenceQualifiersTransform._addQualifierCandidates
EliminateSyntheticAccessorsTransform._nodesToRemove
IntroduceOuterClassReferencesTransform._nodesToRemove
AddReferenceQualifiersTransform._removeQualifierCandidates
SimplifyAssignmentsTransform.NEGATE_FUNCTION
SimplifyAssignmentsTransform.NEGATE_FUNCTION
Methods in com.strobel.decompiler.languages.java.ast.transforms that return AstNodeModifier and TypeMethodDescriptionprivate static AstNode
RemoveRedundantCastsTransform.skipParenthesesUp
(AstNode e) SimplifyAssignmentsTransform.visitAssignmentExpression
(AssignmentExpression node, Void data) SimplifyAssignmentsTransform.visitBinaryOperatorExpression
(BinaryOperatorExpression node, Void data) protected AstNode
ConvertLoopsTransform.visitChildren
(AstNode node, Void data) SimplifyAssignmentsTransform.visitConditionalExpression
(ConditionalExpression node, Void data) ConvertLoopsTransform.visitExpressionStatement
(ExpressionStatement node, Void data) FlattenSwitchBlocksTransform.visitSwitchSection
(SwitchSection node, Void p) SimplifyAssignmentsTransform.visitUnaryOperatorExpression
(UnaryOperatorExpression node, Void p) ConvertLoopsTransform.visitWhileStatement
(WhileStatement node, Void data) Methods in com.strobel.decompiler.languages.java.ast.transforms that return types with arguments of type AstNodeModifier and TypeMethodDescriptionMethods in com.strobel.decompiler.languages.java.ast.transforms with parameters of type AstNodeModifier and TypeMethodDescriptionprivate boolean
InsertNecessaryConversionsTransform.addCastForAssignment
(AstNode left, Expression right) DeclareVariablesTransform.analyze
(DeclareVariablesTransform.VariableToDeclare v, AstNode scope) BreakTargetRelocation.assessForLoop
(AstNode commonAncestor, List<Stack<AstNode>> paths, LabelStatement label, List<GotoStatement> statements) private static boolean
DeclareVariablesTransform.canRedeclareVariable
(DefiniteAssignmentAnalysis analysis, BlockStatement block, AstNode node, String variableName) private static ParameterDeclaration
NewTryWithResourcesTransform.findDeclaration
(IdentifierExpression id, AstNode source) private MethodDeclaration
EnumRewriterTransform.Visitor.findMethodDeclaration
(AstNode node) private Statement
EnumRewriterTransform.Visitor.findStatement
(AstNode node) (package private) static VariableDeclarationStatement
ConvertLoopsTransform.findVariableDeclaration
(AstNode node, String identifier) private static boolean
ConvertLoopsTransform.hasNestedBlocks
(AstNode node) private static boolean
DeclareLocalClassesTransform.hasNestedBlocks
(AstNode node) private static boolean
DeclareVariablesTransform.hasNestedBlocks
(AstNode node) (package private) static boolean
RemoveHiddenMembersTransform.isHiddenMemberReference
(AstNode node, DecompilerContext context) private boolean
RemoveImplicitBoxingTransform.isUnboxingExpression
(AstNode node) private boolean
RemoveImplicitBoxingTransform.isValidPrimitiveParent
(InvocationExpression node, AstNode parent) private static boolean
private static boolean
BreakTargetRelocation.lookBehind
(AstNode start, Set<AstNode> targets) private static NameResolveMode
AddReferenceQualifiersTransform.modeForType
(AstNode type) private String
AddReferenceQualifiersTransform.qualifyReference
(AstNode node, TypeReference type) private void
private void
LabelCleanupTransform.redirectLabels
(AstNode node, String labelName, String nextLabel) private static boolean
DeclareLocalClassesTransform.referencesType
(AstNode node, TypeReference localType) protected Object
AddReferenceQualifiersTransform.resolveName
(AstNode location, String name, NameResolveMode mode) void
void
void
private void
DeclareLocalClassesTransform.run
(AstNode node, DefiniteAssignmentAnalysis daa) void
private void
DeclareVariablesTransform.run
(AstNode node, DefiniteAssignmentAnalysis daa) void
void
void
void
void
void
void
void
void
void
void
void
void
void
void
void
void
void
void
private void
BreakTargetRelocation.runForMethod
(AstNode node) static void
TransformationPipeline.runTransformationsUntil
(AstNode node, Predicate<IAstTransform> abortCondition, DecompilerContext context) private static AstNode
RemoveRedundantCastsTransform.skipParenthesesUp
(AstNode e) private MethodDefinition
RewriteLegacyClassConstantsTransform.tryLocateClassMethod
(TypeDefinition currentType, AstNode compilationUnit) private static boolean
DeclareVariablesTransform.usesVariable
(AstNode node, String variableName) protected IdentifierExpression
AbstractHelperClassTransform.varReference
(AstNode declaration) protected AstNode
ConvertLoopsTransform.visitChildren
(AstNode node, Void data) protected Boolean
DeclareVariablesTransform.IsSingleAssignmentVisitor.visitChildren
(AstNode node, Void data) protected Boolean
DeclareVariablesTransform.ParameterAssignmentVisitor.visitChildren
(AstNode node, Void data) protected Void
RewriteLegacyClassConstantsTransform.ClassMethodLocator.visitChildren
(AstNode node, Void data) private Boolean
DeclareVariablesTransform.IsSingleAssignmentVisitor.visitCondition
(AstNode condition, AstNode ifTrue, AstNode ifFalse) Method parameters in com.strobel.decompiler.languages.java.ast.transforms with type arguments of type AstNodeModifier and TypeMethodDescriptionBreakTargetRelocation.assessForLoop
(AstNode commonAncestor, List<Stack<AstNode>> paths, LabelStatement label, List<GotoStatement> statements) private boolean
BreakTargetRelocation.convertToContinue
(BlockStatement parent, BreakTargetRelocation.LabelInfo labelInfo, List<Stack<AstNode>> paths) private Statement
BreakTargetRelocation.findLowestCommonAncestor
(List<Stack<AstNode>> paths) private BlockStatement
BreakTargetRelocation.findLowestCommonAncestorBlock
(List<Stack<AstNode>> paths) private static boolean
private static boolean
BreakTargetRelocation.lookBehind
(AstNode start, Set<AstNode> targets) private void
BreakTargetRelocation.rebuildPaths
(List<Stack<AstNode>> paths, BreakTargetRelocation.LabelInfo labelInfo) -
Uses of AstNode in com.strobel.decompiler.languages.java.utilities
Fields in com.strobel.decompiler.languages.java.utilities with type parameters of type AstNodeModifier and TypeFieldDescriptionprivate final Function
<AstNode, ResolveResult> RedundantCastUtility.IsRedundantVisitor._resolver
Methods in com.strobel.decompiler.languages.java.utilities that return AstNodeModifier and TypeMethodDescriptionstatic AstNode
TypeUtilities.skipParenthesesDown
(AstNode e) private static AstNode
RedundantCastUtility.skipParenthesesUp
(AstNode e) static AstNode
TypeUtilities.skipParenthesesUp
(AstNode e) Methods in com.strobel.decompiler.languages.java.utilities with parameters of type AstNodeModifier and TypeMethodDescriptionprotected boolean
RedundantCastUtility.IsRedundantVisitor.arrayAccessAtTheLeftSideOfAssignment
(AstNode node) protected boolean
RedundantCastUtility.IsRedundantVisitor.checkResolveAfterRemoveCast
(AstNode parent) static List
<CastExpression> RedundantCastUtility.getRedundantCastsInside
(Function<AstNode, ResolveResult> resolver, AstNode site) protected TypeReference
private static TypeReference
TypeUtilities.getType
(Function<AstNode, ResolveResult> resolver, AstNode node) private static boolean
RedundantCastUtility.IsRedundantVisitor.isPolymorphicMethod
(AstNode expression) static AstNode
TypeUtilities.skipParenthesesDown
(AstNode e) private static AstNode
RedundantCastUtility.skipParenthesesUp
(AstNode e) static AstNode
TypeUtilities.skipParenthesesUp
(AstNode e) protected Void
RedundantCastUtility.IsRedundantVisitor.visitChildren
(AstNode node, Void data) Method parameters in com.strobel.decompiler.languages.java.utilities with type arguments of type AstNodeModifier and TypeMethodDescriptionstatic TypeReference
TypeUtilities.getExpectedTypeByParent
(Function<AstNode, ResolveResult> resolver, Expression expression) static List
<CastExpression> RedundantCastUtility.getRedundantCastsInside
(Function<AstNode, ResolveResult> resolver, AstNode site) private static TypeReference
TypeUtilities.getType
(Function<AstNode, ResolveResult> resolver, AstNode node) protected List
<TypeReference> RedundantCastUtility.IsRedundantVisitor.getTypes
(AstNodeCollection<? extends AstNode> nodes) static boolean
RedundantCastUtility.isCastRedundant
(Function<AstNode, ResolveResult> resolver, CastExpression cast) Constructor parameters in com.strobel.decompiler.languages.java.utilities with type arguments of type AstNodeModifierConstructorDescription(package private)
CastCollector
(Function<AstNode, ResolveResult> resolver) (package private)
IsRedundantVisitor
(Function<AstNode, ResolveResult> resolver, boolean recursive) -
Uses of AstNode in com.strobel.decompiler.patterns
Fields in com.strobel.decompiler.patterns with type parameters of type AstNodeModifier and TypeFieldDescriptionprivate final Function
<AstNode, ResolveResult> TypedExpression._resolver
Methods in com.strobel.decompiler.patterns that return AstNodeConstructor parameters in com.strobel.decompiler.patterns with type arguments of type AstNodeModifierConstructorDescriptionTypedExpression
(TypeReference expressionType, Function<AstNode, ResolveResult> resolver) TypedExpression
(TypeReference expressionType, Function<AstNode, ResolveResult> resolver, int options) TypedExpression
(String groupName, TypeReference expressionType, Function<AstNode, ResolveResult> resolver) TypedExpression
(String groupName, TypeReference expressionType, Function<AstNode, ResolveResult> resolver, int options)