11088-1-2

initEReference(getEAnnotation_References(), this.getEObject(), null, "references", null, 0, -1, EAnnotation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(eClassEClass, EClass.class, "EClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getEGenericType_EClassifier(), this.getEClassifier(), null, "eClassifier", null, 0, 1, EGenericType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(eTypeParameterEClass, ETypeParameter.class, "ETypeParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java |  | File path: /emf-2.4.1/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java
Method name: `void initializePackageContents()` |  | Method name: `void initializePackageContents()`
Number of AST nodes: 2 |  | Number of AST nodes: 2

1

    initEReference(getEAnnotation_References(), this.getEObject(), null, "references", null, 0, -1, EAnnotation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);↵

1

    initEReference(getEGenericType_EClassifier(), this.getEClassifier(), null, "eClassifier", null, 0, 1, EGenericType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);↵

2

        initEClass(eClassEClass, EClass.class, "EClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

2

        initEClass(eTypeParameterEClass, ETypeParameter.class, "ETypeParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

See real code fragment |  | See real code fragment

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

1. {Refactorable}

   Mapping Summary
   Number of mapped statements | 2
   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) | 0.0
   Clone type | Type 2

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

   38

       initEReference(getEAnnotation_References(), this.getEObject(), null, "references", null, 0, -1, EAnnotation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

   38 | initEReference(getEAnnotation_References(), this.getEObject(), null, "references", null, 0, -1, EAnnotation.class, ! IS_TRANSIENT, ! IS_VOLATILE, IS_CHANGEABLE, ! IS_COMPOSITE, IS_RESOLVE_PROXIES, ! IS_UNSETTABLE, IS_UNIQUE, ! IS_DERIVED, IS_ORDERED);
   200 | initEReference(getEGenericType_EClassifier(), this.getEClassifier(), null, "eClassifier", null, 0, 1, EGenericType.class, ! IS_TRANSIENT, ! IS_VOLATILE, IS_CHANGEABLE, ! IS_COMPOSITE, IS_RESOLVE_PROXIES, ! IS_UNSETTABLE, IS_UNIQUE, ! IS_DERIVED, IS_ORDERED);

   Differences
   Expression1 | Expression2 | Difference
   --- | --- | ---
   getEAnnotation_References | getEGenericType_EClassifier | METHOD_INVOCATION_NAME_MISMATCH
   getEObject | getEClassifier | METHOD_INVOCATION_NAME_MISMATCH
   "references" | "eClassifier" | LITERAL_VALUE_MISMATCH
   -1 | 1 | TYPE_COMPATIBLE_REPLACEMENT

   200

       initEReference(getEGenericType_EClassifier(), this.getEClassifier(), null, "eClassifier", null, 0, 1, EGenericType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

   39

       initEClass(eClassEClass, EClass.class, "EClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

   39 | initEClass(eClassEClass, EClass.class, "EClass", ! IS_ABSTRACT, ! IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
   201 | initEClass(eTypeParameterEClass, ETypeParameter.class, "ETypeParameter", ! IS_ABSTRACT, ! IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

   Differences
   Expression1 | Expression2 | Difference
   --- | --- | ---
   eClassEClass | eTypeParameterEClass | VARIABLE_NAME_MISMATCH

   201

       initEClass(eTypeParameterEClass, ETypeParameter.class, "ETypeParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

   Precondition Violations (0)
   Row | Violation
   --- | ---