Class RecordRewriter
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.RecordRewriter
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class(package private) static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static Set<AccessFlag> private static Set<AccessFlagMethod> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static booleanclassArgEq(Expression expression, JavaTypeInstance thisType) private static booleancmpArgsEq(Expression cmpArgs, JavaTypeInstance thisType, List<ClassFileField> instances) private static ClassFileFieldgetCFF(LValue lhs, JavaRefTypeInstance thisType) private static MethodgetMethod(ClassFile classFile, List<JavaTypeInstance> args, String name) private static StructuredStatementgetSingleCodeLine(Method method) private static voidhideConstructorIfEmpty(Method canonicalCons) private static voidhideDefaultGetter(Method method, ClassFileField classFileField, JavaRefTypeInstance thisType) private static voidhideDefaultUtilityMethods(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> instances) private static voidhideEquals(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) private static voidhideHashCode(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) private static voidhideIfMatch(JavaTypeInstance thisType, List<ClassFileField> fields, Method method, WildcardMatch wcm, StructuredStatement stm) private static voidhideToString(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) private static booleanmethodHandleEq(Expression expression, String name) private static booleanremoveImplicitAssignments(Method canonicalCons, List<ClassFileField> instances, JavaRefTypeInstance thisType) static voidrewrite(ClassFile classFile, DCCommonState state) private static booleanrewriteIfRecord(ClassFile classFile, DCCommonState state) private static booleanstringArgEq(Expression expression, String name)
-
Field Details
-
recordFieldFlags
-
recordGetterFlags
-
-
Constructor Details
-
RecordRewriter
public RecordRewriter()
-
-
Method Details
-
rewrite
-
rewriteIfRecord
-
hideDefaultUtilityMethods
private static void hideDefaultUtilityMethods(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> instances) -
hideEquals
private static void hideEquals(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) -
hideToString
private static void hideToString(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) -
hideHashCode
private static void hideHashCode(ClassFile classFile, JavaTypeInstance thisType, List<ClassFileField> fields) -
hideIfMatch
private static void hideIfMatch(JavaTypeInstance thisType, List<ClassFileField> fields, Method method, WildcardMatch wcm, StructuredStatement stm) -
stringArgEq
-
methodHandleEq
-
classArgEq
-
cmpArgsEq
private static boolean cmpArgsEq(Expression cmpArgs, JavaTypeInstance thisType, List<ClassFileField> instances) -
getMethod
-
getSingleCodeLine
-
hideDefaultGetter
private static void hideDefaultGetter(Method method, ClassFileField classFileField, JavaRefTypeInstance thisType) -
hideConstructorIfEmpty
-
removeImplicitAssignments
private static boolean removeImplicitAssignments(Method canonicalCons, List<ClassFileField> instances, JavaRefTypeInstance thisType) -
getCFF
-