Class NonStaticLifter
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.opgraph.op4rewriters.NonStaticLifter
-
public class NonStaticLifter extends java.lang.ObjectSimilar to the static lifter, however this has to cope with the possibility that EVERY constructor will have had the non static initialisation pushed into it.
-
-
Constructor Summary
Constructors Constructor Description NonStaticLifter(ClassFile classFile)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanfromThisClass(FieldVariable fv)private booleanhasLegitArgs(Expression rValue, java.util.Set<Expression> usedFvs)voidliftNonStatics()private booleantryLift(FieldVariable lValue, Expression rValue, java.util.Map<java.lang.String,Pair<java.lang.Integer,ClassFileField>> fieldMap, java.util.Set<Expression> usedFvs)
-
-
-
Field Detail
-
classFile
private final ClassFile classFile
-
-
Constructor Detail
-
NonStaticLifter
public NonStaticLifter(ClassFile classFile)
-
-
Method Detail
-
liftNonStatics
public void liftNonStatics()
-
fromThisClass
private boolean fromThisClass(FieldVariable fv)
-
tryLift
private boolean tryLift(FieldVariable lValue, Expression rValue, java.util.Map<java.lang.String,Pair<java.lang.Integer,ClassFileField>> fieldMap, java.util.Set<Expression> usedFvs)
-
hasLegitArgs
private boolean hasLegitArgs(Expression rValue, java.util.Set<Expression> usedFvs)
-
-