if (id >= 0) { int previousOffset = con.offsets[id]; if (previousOffset < 0 || previousOffset != offset) { con.offsets[id] = offset; } else { con.offsets[id] = -1; op = op.next; break; } }
if (id >= 0) { int previousOffset = con.offsets[id]; if (previousOffset < 0 || previousOffset != offset) { con.offsets[id] = offset; } else { con.offsets[id] = -1; op = op.next; break; } }
Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/xml/type/internal/RegEx.java File path: /emf-2.4.1/src/org/eclipse/emf/ecore/xml/type/internal/RegEx.java
Method name: int matchCharArray(Context, Op, int, int, int) Method name: int matchString(Context, Op, int, int, int)
Number of AST nodes: 7 Number of AST nodes: 7
1
if (id >= 0) {
1
if (id >= 0) {
2
                          int previousOffset = con.offsets[id];
2
                          int previousOffset = con.offsets[id];
3
                          if (previousOffset < 0 || previousOffset != offset) {
3
                          if (previousOffset < 0 || previousOffset != offset) {
4
                              con.offsets[id] = offset;
4
                              con.offsets[id] = offset;
5
                          } else {
5
                          } else {
6
                              con.offsets[id] = -1;
6
                              con.offsets[id] = -1;
7
                              op = op.next;
7
                              op = op.next;
8
                              break;
8
                              break;
9
                          }
9
                          }
10
                      }
10
                      }
Summary
Number of common nesting structure subtrees1
Number of refactorable cases1
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.3
Clones locationClones are declared in the same class
Number of node comparisons31
  1. {Refactorable}
    Mapping Summary
    Number of mapped statements7
    Number of unmapped statements in the first code fragment0
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)14.2
    Clone typeType 1
    Mapped Statements
    ID Statement ID Statement
    209
    if (id >= 0)
    209
    if (id >= 0)
    210
    int previousOffset = con.offsets[id];
    210
    int previousOffset = con.offsets[id];
    211
    if (previousOffset < 0 || previousOffset != offset)
    211
    if (previousOffset < 0 || previousOffset != offset)
    212
    con.offsets[id] = offset;
    212
    con.offsets[id] = offset;
    else
    else
    213
    con.offsets[id] = -1;
    213
    con.offsets[id] = -1;
    214
    op = op.next;
    214
    op = op.next;
    215
    break;
    215
    break;
    Precondition Violations (0)
    Row Violation