11436-1-4

if (diagnostics == null) { return false; } else { result = false; diagnostics.add (createDiagnostic (Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] { "value" }, new Object[] { eClass }, context)); }
if (diagnostics == null) { return false; } else { result = false; diagnostics.add (createDiagnostic (Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] { "key" }, new Object[] { eClass }, context)); }

Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/util/EcoreValidator.java |  | File path: /emf-2.4.1/src/org/eclipse/emf/ecore/util/EcoreValidator.java
Method name: `boolean validateEClass_WellFormedMapEntryClass(EClass, DiagnosticChain, Map)` |  | Method name: `boolean validateEClass_WellFormedMapEntryClass(EClass, DiagnosticChain, Map)`
Number of AST nodes: 4 |  | Number of AST nodes: 4

1

    if (diagnostics == null)↵

1

    if (diagnostics == null)↵

2

            {↵

2

            {↵

3

              return false;↵

3

              return false;↵

4

            }↵

4

            }↵

5

            else↵

5

            else↵

6

            {↵

6

            {↵

7

              result = false;↵

7

              result = false;↵

8

              diagnostics.add↵

8

              diagnostics.add↵

9

                (createDiagnostic↵

9

                (createDiagnostic↵

10

                  (Diagnostic.ERROR,↵

10

                  (Diagnostic.ERROR,↵

11

                   DIAGNOSTIC_SOURCE,↵

11

                   DIAGNOSTIC_SOURCE,↵

12

                   WELL_FORMED_MAP_ENTRY_CLASS,↵

12

                   WELL_FORMED_MAP_ENTRY_CLASS,↵

13

                   "_UI_EClassNotWellFormedMapEntry_diagnostic", ↵

13

                   "_UI_EClassNotWellFormedMapEntry_diagnostic",↵

14

                   new Object[] { "value" },↵

14

                   new Object[] { "key" },↵

15

                   new Object[] { eClass },↵

15

                   new Object[] { eClass },↵

16

                   context));↵

16

                   context));↵

17

            }

17

            }

See real code fragment |  | See real code fragment

Summary
Number of common nesting structure subtrees | 1
Number of refactorable cases | 0
Number of non-refactorable cases | 1
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.1
Clones location | Clones are in the same method
Number of node comparisons | 17

1. {Non-refactorable}

   Mapping Summary
   Number of mapped statements | 4
   Number of unmapped statements in the first code fragment | 0
   Number of unmapped statements in the second code fragment | 0
   Time elapsed for statement mapping (ms) | 2.1
   Clone type | Type 2

   Mapped Statements
   ID | Statement |  | ID | Statement
   --- | --- | --- | --- | ---

   11

       if (diagnostics == null)

   5

       if (diagnostics == null)

   12

       return false;

   12 | return false;
   6 | return false;

   Preondition Violations
   Conditional return false;
   Conditional return false;

   6

       return false;

       else

       else

   13

       result = false;

   7

       result = false;

   14

       diagnostics.add(createDiagnostic(Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] {"value"}, new Object[] {eClass}, context));

   14 | diagnostics.add(createDiagnostic(Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] {"value"}, new Object[] {eClass}, context));
   8 | diagnostics.add(createDiagnostic(Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] {"key"}, new Object[] {eClass}, context));

   Differences
   Expression1 | Expression2 | Difference
   --- | --- | ---
   "value" | "key" | LITERAL_VALUE_MISMATCH

   8

       diagnostics.add(createDiagnostic(Diagnostic.ERROR, DIAGNOSTIC_SOURCE, WELL_FORMED_MAP_ENTRY_CLASS, "_UI_EClassNotWellFormedMapEntry_diagnostic", new Object[] {"key"}, new Object[] {eClass}, context));

   Precondition Violations (2)
   Row | Violation
   --- | ---
   1 | Conditional return false;
   2 | Conditional return false;