Class CreationCollector
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.parse.utils.CreationCollector
-
public class CreationCollector extends java.lang.Object
This is all a bit ugly, with the random casting going on. But I think probably it would be worse to use a multiple indirection visitor....
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
CreationCollector.StatementPair<X>
-
Field Summary
Fields Modifier and Type Field Description private AnonymousClassUsage
anonymousClassUsage
private java.util.List<Pair<LValue,CreationCollector.StatementPair<MemberFunctionInvokation>>>
collectedConstructions
private java.util.Map<LValue,java.util.List<StatementContainer>>
collectedCreations
-
Constructor Summary
Constructors Constructor Description CreationCollector(AnonymousClassUsage anonymousClassUsage)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectConstruction(Expression expression, MemberFunctionInvokation rValue, StatementContainer container)
void
collectCreation(LValue lValue, Expression rValue, StatementContainer container)
void
condenseConstructions(Method method, DCCommonState dcCommonState)
private void
markConstruction(LValue lValue, MemberFunctionInvokation rValue, StatementContainer container)
private void
moveDupPostCreation(LValue lValue, StatementContainer oldCreation, StatementContainer oldConstruction)
-
-
-
Field Detail
-
collectedConstructions
private final java.util.List<Pair<LValue,CreationCollector.StatementPair<MemberFunctionInvokation>>> collectedConstructions
-
collectedCreations
private final java.util.Map<LValue,java.util.List<StatementContainer>> collectedCreations
-
anonymousClassUsage
private final AnonymousClassUsage anonymousClassUsage
-
-
Constructor Detail
-
CreationCollector
public CreationCollector(AnonymousClassUsage anonymousClassUsage)
-
-
Method Detail
-
collectCreation
public void collectCreation(LValue lValue, Expression rValue, StatementContainer container)
-
collectConstruction
public void collectConstruction(Expression expression, MemberFunctionInvokation rValue, StatementContainer container)
-
markConstruction
private void markConstruction(LValue lValue, MemberFunctionInvokation rValue, StatementContainer container)
-
condenseConstructions
public void condenseConstructions(Method method, DCCommonState dcCommonState)
-
moveDupPostCreation
private void moveDupPostCreation(LValue lValue, StatementContainer oldCreation, StatementContainer oldConstruction)
-
-