Previous CloneSet | Next CloneSet | Back to Main Report |
Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
---|---|---|---|---|
11 | 3 | 3 | 0.964 | statement_sequence[3] |
Clone Abstraction | Parameter Bindings |
Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
---|---|---|---|
1 | 11 | 148 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/ForeachStatement.java |
2 | 11 | 198 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/ForStatement.java |
3 | 11 | 145 | plugins/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/WhileStatement.java |
| ||||
FlowInfo mergedInfo = FlowInfo.mergedOptimizedBranches( (loopingContext.initsOnBreak.tagBits& FlowInfo.UNREACHABLE) != 0 ? loopingContext.initsOnBreak: flowInfo.addInitializationsFrom(loopingContext.initsOnBreak), // recover upstream null info false, exitBranch, false, true /*for(;;){}while(true); unreachable(); */ ); mergedInitStateIndex = currentScope.methodScope().recordInitializationStates(mergedInfo); return mergedInfo; |
| ||||
//end of loop FlowInfo mergedInfo = FlowInfo.mergedOptimizedBranches( (loopingContext.initsOnBreak.tagBits& FlowInfo.UNREACHABLE) != 0 ? loopingContext.initsOnBreak: flowInfo.addInitializationsFrom(loopingContext.initsOnBreak), // recover upstream null info isConditionOptimizedTrue, exitBranch, isConditionOptimizedFalse, !isConditionTrue /*for(;;){}while(true); unreachable(); */ ); mergedInitStateIndex = currentScope.methodScope().recordInitializationStates(mergedInfo); return mergedInfo; |
| ||||
// end of loop FlowInfo mergedInfo = FlowInfo.mergedOptimizedBranches( (loopingContext.initsOnBreak.tagBits& FlowInfo.UNREACHABLE) != 0 ? loopingContext.initsOnBreak: flowInfo.addInitializationsFrom(loopingContext.initsOnBreak), // recover upstream null info isConditionOptimizedTrue, exitBranch, isConditionOptimizedFalse, !isConditionTrue /*while(true); unreachable(); */ ); mergedInitStateIndex = currentScope.methodScope().recordInitializationStates(mergedInfo); return mergedInfo; |
| |||
// end of loop //end of loop FlowInfo mergedInfo = FlowInfo.mergedOptimizedBranches((loopingContext.initsOnBreak.tagBits&FlowInfo.UNREACHABLE) != 0 ? loopingContext.initsOnBreak: flowInfo.addInitializationsFrom(loopingContext.initsOnBreak), // recover upstream null info [[#variableb40cd300]], exitBranch, [[#variableb945ca80]], [[#variable54b22940]] /*while(true); unreachable(); */ /*for(;;){}while(true); unreachable(); */ ); mergedInitStateIndex = currentScope.methodScope().recordInitializationStates(mergedInfo); return mergedInfo; |
CloneAbstraction |
Parameter Index | Clone Instance | Parameter Name | Value |
---|---|---|---|
1 | 1 | [[#b40cd300]] | isConditionOptimizedTrue |
1 | 2 | [[#b40cd300]] | false |
1 | 3 | [[#b40cd300]] | isConditionOptimizedTrue |
2 | 1 | [[#b945ca80]] | isConditionOptimizedFalse |
2 | 2 | [[#b945ca80]] | false |
2 | 3 | [[#b945ca80]] | isConditionOptimizedFalse |
3 | 1 | [[#54b22940]] | !isConditionTrue |
3 | 2 | [[#54b22940]] | true |
3 | 3 | [[#54b22940]] | !isConditionTrue |