Time elapsed for finding largest common nesting structure subtrees (ms)
0.1
Clones location
Clones are in different classes
Number of node comparisons
7
{Non-refactorable}
Mapping Summary
Number of mapped statements
1
Number of unmapped statements in the first code fragment
3
Number of unmapped statements in the second code fragment
2
Time elapsed for statement mapping (ms)
0.5
Clone type
Type 3
Mapped Statements
ID
Statement
ID
Statement
1
if(owners==null)
1
if(owners==null)
7
if(removals==null)
Differences
Expression1
Expression2
Difference
owners
removals
VARIABLE_NAME_MISMATCH
java.util.List
java.util.List
VARIABLE_TYPE_MISMATCH
Preondition Violations
Type java.util.List<java.lang.Object> of variable owners does not match with type java.util.List<org.eclipse.emf.ecore.util.FeatureMap.Entry> of variable removals
Make classes java.util.List and java.util.List extend a common superclass
7
if(removals==null)
2
owners=newUniqueEList<Object>();
3
addOwners(getCommand());
8
removals=newBasicEList<Entry>();
Preondition Violations
Unmatched statement removals=new BasicEList<Entry>(); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
8
removals=newBasicEList<Entry>();
4
returnowners;
4
returnowners;
Preondition Violations
Unmatched return owners;
9
removals.add(entry);
Precondition Violations (3)
Row
Violation
1
Type java.util.List<java.lang.Object> of variable owners does not match with type java.util.List<org.eclipse.emf.ecore.util.FeatureMap.Entry> of variable removals
2
Unmatched statement removals=new BasicEList<Entry>(); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted