Uses of Class
com.strobel.decompiler.languages.java.ast.Expression
Packages that use Expression
Package
Description
-
Uses of Expression in com.strobel.decompiler.languages.java
Method parameters in com.strobel.decompiler.languages.java with type arguments of type ExpressionModifier and TypeMethodDescriptionprivate voidJavaOutputVisitor.writeInitializerElements(AstNodeCollection<Expression> elements) -
Uses of Expression in com.strobel.decompiler.languages.java.analysis
Methods in com.strobel.decompiler.languages.java.analysis with parameters of type ExpressionModifier and TypeMethodDescriptionstatic booleanCorrelator.areCorrelated(Expression readExpression, Statement writeStatement) protected BooleanControlFlowGraphBuilder.evaluateCondition(Expression e) protected ResolveResultControlFlowGraphBuilder.evaluateConstant(Expression e) static UsageTypeUsageClassifier.getUsageType(Expression expression) -
Uses of Expression in com.strobel.decompiler.languages.java.ast
Subclasses of Expression in com.strobel.decompiler.languages.java.astModifier and TypeClassDescriptionclassclassclassclassprivate static final classclassclassclassprivate static final classclassfinal classclassprivate static final classprivate static final classclassclassclassprivate static final classclassclassclassclassclassfinal classfinal classclassclassclassclassfinal classclassprivate static final classfinal classclassclassFields in com.strobel.decompiler.languages.java.ast declared as ExpressionModifier and TypeFieldDescriptionstatic final Expression[]Expression.EMPTY_EXPESSIONSstatic final ExpressionExpression.NULLFields in com.strobel.decompiler.languages.java.ast with type parameters of type ExpressionModifier and TypeFieldDescriptionprivate final Map<String, Expression> LocalClassHelper.ClosureRewriterPhaseOneVisitor._initializersprivate final Map<String, Expression> LocalClassHelper.ClosureRewriterPhaseTwoVisitor._initializersprivate final List<Expression> LocalClassHelper.ClosureRewriterPhaseOneVisitor._originalArgumentsprivate final Map<String, Expression> LocalClassHelper.ClosureRewriterPhaseOneVisitor._replacementsprivate final Map<String, Expression> LocalClassHelper.ClosureRewriterPhaseTwoVisitor._replacementsstatic final Role<Expression> Roles.ARGUMENTstatic final Role<Expression> MethodGroupExpression.CLOSURE_ARGUMENT_RULEstatic final Role<Expression> Roles.CONDITIONstatic final Role<Expression> ConditionalExpression.CONDITION_ROLEstatic final Role<Expression> IfElseStatement.CONDITION_ROLEstatic final Role<Expression> MethodDeclaration.DEFAULT_VALUE_ROLEstatic final Role<Expression> Roles.EXPRESSIONstatic final Role<Expression> ConditionalExpression.FALSE_ROLEstatic final Role<Expression> SwitchExpression.GOVERNING_EXPRESSION_ROLEstatic final Role<Expression> AssignmentExpression.LEFT_ROLEstatic final Role<Expression> BinaryOperatorExpression.LEFT_ROLEstatic final Role<Expression> InlinedBytecodeExpression.OPERAND_ROLEstatic final Role<Expression> AssignmentExpression.RIGHT_ROLEstatic final Role<Expression> BinaryOperatorExpression.RIGHT_ROLEstatic final Role<Expression> Roles.TARGET_EXPRESSIONstatic final Role<Expression> ConditionalExpression.TRUE_ROLEstatic final Role<Expression> SwitchExpressionArm.VALUE_ROLEMethods in com.strobel.decompiler.languages.java.ast that return ExpressionModifier and TypeMethodDescriptionExpression.clone()AstBuilder.createAnnotationElement(AnnotationElement element) static ExpressionExpression.forPattern(Pattern pattern) final ExpressionIndexerExpression.getArgument()final ExpressionAssertStatement.getCondition()final ExpressionConditionalExpression.getCondition()final ExpressionDoWhileStatement.getCondition()final ExpressionForStatement.getCondition()final ExpressionIfElseStatement.getCondition()final ExpressionWhileStatement.getCondition()final ExpressionMethodDeclaration.getDefaultValue()final ExpressionCaseLabel.getExpression()final ExpressionCastExpression.getExpression()final ExpressionExpressionStatement.getExpression()final ExpressionInstanceOfExpression.getExpression()final ExpressionParenthesizedExpression.getExpression()final ExpressionReturnStatement.getExpression()final ExpressionSwitchStatement.getExpression()final ExpressionSynchronizedStatement.getExpression()final ExpressionThrowStatement.getExpression()final ExpressionUnaryOperatorExpression.getExpression()final ExpressionConditionalExpression.getFalseExpression()final ExpressionSwitchExpression.getGoverningExpression()final ExpressionForEachStatement.getInExpression()final ExpressionVariableInitializer.getInitializer()final ExpressionAssignmentExpression.getLeft()final ExpressionBinaryOperatorExpression.getLeft()final ExpressionAssertStatement.getMessage()final ExpressionAssignmentExpression.getRight()final ExpressionBinaryOperatorExpression.getRight()final ExpressionIndexerExpression.getTarget()final ExpressionInvocationExpression.getTarget()final ExpressionMemberReferenceExpression.getTarget()final ExpressionMethodGroupExpression.getTarget()final ExpressionObjectCreationExpression.getTarget()final ExpressionSuperReferenceExpression.getTarget()final ExpressionThisReferenceExpression.getTarget()final ExpressionConditionalExpression.getTrueExpression()final ExpressionBreakStatement.getValue()private static ExpressionAstMethodBodyBuilder.inlineAssembly(Expression byteCode, List<Expression> arguments) static ExpressionAstBuilder.makeDefaultValue(TypeReference type) static ExpressionAstBuilder.makePrimitive(long val, TypeReference type) private ExpressionAstMethodBodyBuilder.transformCall(boolean isVirtual, Expression byteCode, List<Expression> arguments) Methods in com.strobel.decompiler.languages.java.ast that return types with arguments of type ExpressionModifier and TypeMethodDescriptionprivate List<Expression> AstMethodBodyBuilder.adjustArgumentsForMethodCall(MethodReference method, List<Expression> arguments) private List<Expression> AstMethodBodyBuilder.adjustArgumentsForMethodCallCore(List<ParameterDefinition> parameters, List<Expression> arguments) final AstNodeCollection<Expression> Annotation.getArguments()final AstNodeCollection<Expression> EnumValueDeclaration.getArguments()final AstNodeCollection<Expression> InvocationExpression.getArguments()final AstNodeCollection<Expression> ObjectCreationExpression.getArguments()final AstNodeCollection<Expression> MethodGroupExpression.getClosureArguments()final AstNodeCollection<Expression> ArrayCreationExpression.getDimensions()final AstNodeCollection<Expression> ArrayInitializerExpression.getElements()final AstNodeCollection<Expression> InlinedBytecodeExpression.getOperands()Role<? extends Expression> Expression.getRole()final AstNodeCollection<Expression> SwitchExpressionArm.getValues()Methods in com.strobel.decompiler.languages.java.ast with parameters of type ExpressionModifier and TypeMethodDescriptionfinal voidBlockStatement.add(Expression expression) protected BooleanDefiniteAssignmentAnalysis.evaluateCondition(Expression e) protected ResolveResultDefiniteAssignmentAnalysis.evaluateConstant(Expression e) private static BinaryOperatorTypeInsertParenthesesVisitor.getBinaryOperatorType(Expression e) private static intInsertParenthesesVisitor.getPrecedence(Expression e) (package private) final DefiniteAssignmentStatusDefiniteAssignmentAnalysis.DefiniteAssignmentVisitor.handleAssignment(Expression left, Expression right, DefiniteAssignmentStatus initialStatus) private static booleanLocalClassHelper.hasSideEffects(Expression e) AstType.invoke(MethodReference methodReference, Expression... arguments) AstType.invoke(MethodReference methodReference, Iterable<AstType> typeArguments, Expression... arguments) AstType.invoke(String methodName, Expression... arguments) AstType.invoke(String methodName, Iterable<AstType> typeArguments, Expression... arguments) Expression.invoke(MethodReference methodReference, Expression... arguments) Expression.invoke(MethodReference methodReference, Iterable<AstType> typeArguments, Expression... arguments) Expression.invoke(Expression... arguments) Expression.invoke(String methodName, Expression... arguments) Expression.invoke(String methodName, Iterable<AstType> typeArguments, Expression... arguments) AstType.makeNew(Expression... arguments) private static voidInsertParenthesesVisitor.parenthesize(Expression expression) private static voidInsertParenthesesVisitor.parenthesizeIfRequired(Expression expression, int minimumPrecedence) final voidIndexerExpression.setArgument(Expression value) final voidAssertStatement.setCondition(Expression value) final voidConditionalExpression.setCondition(Expression value) final voidDoWhileStatement.setCondition(Expression value) final voidForStatement.setCondition(Expression value) final voidIfElseStatement.setCondition(Expression value) final voidWhileStatement.setCondition(Expression value) final voidMethodDeclaration.setDefaultValue(Expression value) final voidCaseLabel.setExpression(Expression value) final voidCastExpression.setExpression(Expression value) final voidExpressionStatement.setExpression(Expression value) final voidInstanceOfExpression.setExpression(Expression value) final voidParenthesizedExpression.setExpression(Expression value) final voidReturnStatement.setExpression(Expression value) final voidSwitchStatement.setExpression(Expression value) final voidSynchronizedStatement.setExpression(Expression value) final voidThrowStatement.setExpression(Expression value) final voidUnaryOperatorExpression.setExpression(Expression value) final voidConditionalExpression.setFalseExpression(Expression value) final voidSwitchExpression.setGoverningExpression(Expression value) final voidForEachStatement.setInExpression(Expression value) final voidVariableInitializer.setInitializer(Expression value) final voidAssignmentExpression.setLeft(Expression value) final voidBinaryOperatorExpression.setLeft(Expression value) final voidAssertStatement.setMessage(Expression message) final voidAssignmentExpression.setRight(Expression value) final voidBinaryOperatorExpression.setRight(Expression value) final voidIndexerExpression.setTarget(Expression value) final voidInvocationExpression.setTarget(Expression value) final voidMemberReferenceExpression.setTarget(Expression value) final voidMethodGroupExpression.setTarget(Expression value) final voidObjectCreationExpression.setTarget(Expression value) final voidSuperReferenceExpression.setTarget(Expression value) final voidThisReferenceExpression.setTarget(Expression value) final voidConditionalExpression.setTrueExpression(Expression value) final voidBreakStatement.setValue(Expression value) Method parameters in com.strobel.decompiler.languages.java.ast with type arguments of type ExpressionModifier and TypeMethodDescriptionprivate List<Expression> AstMethodBodyBuilder.adjustArgumentsForMethodCall(MethodReference method, List<Expression> arguments) private static ExpressionAstMethodBodyBuilder.inlineAssembly(Expression byteCode, List<Expression> arguments) AstType.invoke(MethodReference methodReference, Iterable<Expression> arguments) AstType.invoke(String methodName, Iterable<Expression> arguments) Expression.invoke(MethodReference methodReference, Iterable<Expression> arguments) Expression.invoke(Iterable<Expression> arguments) Expression.invoke(String methodName, Iterable<Expression> arguments) AstType.makeNew(Iterable<Expression> arguments) private static voidLocalClassHelper.rewriteThisReferences(DecompilerContext context, TypeDeclaration declaration, Map<String, Expression> initializers) private ExpressionAstMethodBodyBuilder.transformCall(boolean isVirtual, Expression byteCode, List<Expression> arguments) Constructors in com.strobel.decompiler.languages.java.ast with parameters of type ExpressionModifierConstructorDescriptionAnonymousObjectCreationExpression(int offset, TypeDeclaration typeDeclaration, AstType type, Expression... arguments) ArrayInitializerExpression(Expression... elements) AssignmentExpression(Expression left, AssignmentOperatorType operator, Expression right) AssignmentExpression(Expression left, Expression right) BinaryOperatorExpression(Expression left, BinaryOperatorType operator, Expression right) CaseLabel(Expression value) CastExpression(AstType castToType, Expression expression) ConditionalExpression(Expression condition, Expression trueExpression, Expression falseExpression) ExpressionStatement(Expression expression) IfElseStatement(int offset, Expression condition, Statement trueStatement) IfElseStatement(int offset, Expression condition, Statement trueStatement, Statement falseStatement) IfElseStatement(Expression condition, Statement trueStatement) IfElseStatement(Expression condition, Statement trueStatement, Statement falseStatement) IndexerExpression(int offset, Expression target, Expression argument) InstanceOfExpression(int offset, Expression expression, AstType type) InstanceOfExpression(Expression expression, AstType type) InvocationExpression(int offset, Expression target, Expression... arguments) InvocationExpression(int offset, Expression target, Iterable<Expression> arguments) InvocationExpression(Expression target, Expression... arguments) InvocationExpression(Expression target, Iterable<Expression> arguments) MemberReferenceExpression(int offset, Expression target, String memberName, AstType... typeArguments) MemberReferenceExpression(int offset, Expression target, String memberName, Iterable<AstType> typeArguments) MemberReferenceExpression(Expression target, String memberName, AstType... typeArguments) MemberReferenceExpression(Expression target, String memberName, Iterable<AstType> typeArguments) MethodGroupExpression(int offset, Expression target, String methodName) ObjectCreationExpression(int offset, AstType type, Expression... arguments) ObjectCreationExpression(AstType type, Expression... arguments) ParenthesizedExpression(Expression expression) ReturnStatement(int offset, Expression returnValue) ReturnStatement(Expression returnValue) SwitchStatement(Expression testExpression) ThrowStatement(Expression expression) UnaryOperatorExpression(UnaryOperatorType operator, Expression expression) VariableDeclarationStatement(AstType type, String name, int offset, Expression initializer) VariableDeclarationStatement(AstType type, String name, Expression initializer) VariableInitializer(String name, Expression initializer) WhileStatement(Expression condition) Constructor parameters in com.strobel.decompiler.languages.java.ast with type arguments of type ExpressionModifierConstructorDescriptionAnonymousObjectCreationExpression(int offset, TypeDeclaration typeDeclaration, AstType type, Iterable<Expression> arguments) ArrayInitializerExpression(Iterable<Expression> elements) ClosureRewriterPhaseOneVisitor(DecompilerContext context, List<Expression> originalArguments, Map<String, Expression> replacements, Map<String, Expression> initializers, List<ParameterDefinition> parametersToRemove, List<AstNode> nodesToRemove) ClosureRewriterPhaseOneVisitor(DecompilerContext context, List<Expression> originalArguments, Map<String, Expression> replacements, Map<String, Expression> initializers, List<ParameterDefinition> parametersToRemove, List<AstNode> nodesToRemove) protectedClosureRewriterPhaseTwoVisitor(DecompilerContext context, Map<String, Expression> replacements, Map<String, Expression> initializers) InvocationExpression(int offset, Expression target, Iterable<Expression> arguments) InvocationExpression(Expression target, Iterable<Expression> arguments) ObjectCreationExpression(int offset, AstType type, Iterable<Expression> arguments) ObjectCreationExpression(AstType type, Iterable<Expression> arguments) -
Uses of Expression in com.strobel.decompiler.languages.java.ast.transforms
Fields in com.strobel.decompiler.languages.java.ast.transforms with type parameters of type ExpressionModifier and TypeFieldDescriptionprivate final StrongBox<Expression> EnumSwitchRewriterTransform.Visitor._scratch(package private) final Map<Integer, Expression> EclipseEnumSwitchRewriterTransform.Visitor.SwitchMapInfo.mappings(package private) final Map<String, Map<Integer, Expression>> EnumSwitchRewriterTransform.Visitor.SwitchMapInfo.mappingsprivate final List<Expression> RewriteSwitchExpressionsTransform.SwitchExpressionInlining.references(package private) final Map<BreakStatement, Expression> RewriteSwitchExpressionsTransform.CaseInfo.yieldedValuesMethods in com.strobel.decompiler.languages.java.ast.transforms that return ExpressionModifier and TypeMethodDescriptionprivate ExpressionInsertNecessaryConversionsTransform.convertBooleanToNumeric(Expression operand) private ExpressionInsertNecessaryConversionsTransform.convertNumericToBoolean(Expression node, TypeReference type) protected ExpressionAbstractHelperClassTransform.tryConvertArgument(Variable lookupVariable, AstType methodHandles, ParameterDefinition p, DynamicCallSite callSite, int argumentIndex, boolean isVarArgs) Methods in com.strobel.decompiler.languages.java.ast.transforms with parameters of type ExpressionModifier and TypeMethodDescriptionprivate booleanInsertNecessaryConversionsTransform.addCastForAssignment(AstNode left, Expression right) private ExpressionInsertNecessaryConversionsTransform.convertBooleanToNumeric(Expression operand) private ExpressionInsertNecessaryConversionsTransform.convertNumericToBoolean(Expression node, TypeReference type) private voidIntroduceStringConcatenationTransform.convertStringBuilderToConcatenation(ObjectCreationExpression node, Expression firstArgument) protected FieldDeclarationAbstractHelperClassTransform.declareField(FieldDefinition fd, Expression initializer, int extraFlags) private booleanEnumSwitchRewriterTransform.Visitor.isSwitchMapLookup(Expression e, StrongBox<Expression> enumValue) private static booleanEliminateSyntheticAccessorsTransform.isThisOrOuterThisReference(Expression e) protected InvocationExpressionAbstractHelperClassTransform.makeMethodHandle(Expression lookup, MethodHandle handle) protected InvocationExpressionAbstractHelperClassTransform.makeMethodHandle(Expression lookup, MethodHandle handle, Expression methodType) protected InvocationExpressionAbstractHelperClassTransform.makeMethodHandle(Expression lookup, MethodHandle handle, Expression methodType, TypeReference optionalSpecialCaller) private booleanDeclareVariablesTransform.tryConvertAssignmentExpressionIntoVariableDeclaration(BlockStatement block, Expression expression, AstType type, String variableName) private voidInlineEscapingAssignmentsTransform.tryInlineValue(Statement previous, Expression value) private booleanSimplifyAssignmentsTransform.tryRewriteBinaryAsAssignment(AssignmentExpression node, Expression left, Expression right) private booleanSimplifyAssignmentsTransform.tryRewriteBinaryAsUnary(AssignmentExpression node, Expression left, Expression right) Method parameters in com.strobel.decompiler.languages.java.ast.transforms with type arguments of type ExpressionModifier and TypeMethodDescriptionprivate booleanIntroduceStringConcatenationTransform.anyIsString(List<Expression> expressions) private booleanIntroduceStringConcatenationTransform.anyIsString(List<Expression> expressions, int start, int end) private voidIntroduceStringConcatenationTransform.handleIndyConcat(InvocationExpression parent, AstNodeCollection<Expression> arguments) private voidIntroduceStringConcatenationTransform.handleIndyConcatWithConstants(InvocationExpression parent, DynamicCallSite callSite, AstNodeCollection<Expression> arguments) private booleanEnumSwitchRewriterTransform.Visitor.isSwitchMapLookup(Expression e, StrongBox<Expression> enumValue) private booleanEclipseEnumSwitchRewriterTransform.Visitor.rewriteSwitch(SwitchStatement s, Map<Integer, Expression> mappings) private booleanEnumSwitchRewriterTransform.Visitor.rewriteSwitch(SwitchStatement s, Map<Integer, Expression> mappings) -
Uses of Expression in com.strobel.decompiler.languages.java.utilities
Methods in com.strobel.decompiler.languages.java.utilities that return ExpressionModifier and TypeMethodDescriptionprivate static ExpressionRedundantCastUtility.removeParentheses(Expression e) static ExpressionTypeUtilities.skipParenthesesDown(Expression e) Methods in com.strobel.decompiler.languages.java.utilities with parameters of type ExpressionModifier and TypeMethodDescriptionprivate booleanRedundantCastUtility.IsRedundantVisitor.castChangesBinarySemantics(Expression operand, Expression otherOperand, Expression toCast, BinaryOperatorType operator) private static booleanTypeUtilities.checkSameExpression(Expression template, Expression expression) private ConversionTypeRedundantCastUtility.IsRedundantVisitor.getConversion(TypeReference target, TypeReference source, Expression value) Determines the conversion type, taking lossiness into consideration for numeric conversions.static TypeReferenceTypeUtilities.getExpectedTypeByParent(Function<AstNode, ResolveResult> resolver, Expression expression) private static IMethodSignatureTypeUtilities.getLambdaSignatureCore(Expression node) private ConversionTypeRedundantCastUtility.IsRedundantVisitor.getNumericConversion(TypeReference target, TypeReference source, Expression value) Determines the numeric conversion type, taking lossiness into consideration.protected booleanRedundantCastUtility.IsRedundantVisitor.isCastRedundantInReferenceExpression(TypeReference type, Expression operand) protected voidRedundantCastUtility.IsRedundantVisitor.processBinaryExpressionOperand(Expression operand, Expression other, BinaryOperatorType op, TypeReference resultType) protected voidRedundantCastUtility.IsRedundantVisitor.processCall(Expression e) protected voidRedundantCastUtility.IsRedundantVisitor.processPossibleTypeCast(Expression rightExpression, TypeReference leftType) private static ExpressionRedundantCastUtility.removeParentheses(Expression e) static ExpressionTypeUtilities.skipParenthesesDown(Expression e) -
Uses of Expression in com.strobel.decompiler.patterns
Methods in com.strobel.decompiler.patterns that return Expression