13-1-3

switch (featureID) { case EcorePackage.EREFERENCE__EANNOTATIONS: return eAnnotations != null && !eAnnotations.isEmpty(); case EcorePackage.EREFERENCE__NAME: return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); case EcorePackage.EREFERENCE__ORDERED: return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT; case EcorePackage.EREFERENCE__UNIQUE: return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT; case EcorePackage.EREFERENCE__LOWER_BOUND: return lowerBound != LOWER_BOUND_EDEFAULT; case EcorePackage.EREFERENCE__UPPER_BOUND: return upperBound != UPPER_BOUND_EDEFAULT; case EcorePackage.EREFERENCE__MANY: return isMany() != MANY_EDEFAULT; case EcorePackage.EREFERENCE__REQUIRED: return isRequired() != REQUIRED_EDEFAULT; case EcorePackage.EREFERENCE__ETYPE: return isSetEType(); case EcorePackage.EREFERENCE__EGENERIC_TYPE: return isSetEGenericType(); case EcorePackage.EREFERENCE__CHANGEABLE: return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT; case EcorePackage.EREFERENCE__VOLATILE: return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT; case EcorePackage.EREFERENCE__TRANSIENT: return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT; case EcorePackage.EREFERENCE__DEFAULT_VALUE_LITERAL: return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral); case EcorePackage.EREFERENCE__DEFAULT_VALUE: return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); case EcorePackage.EREFERENCE__UNSETTABLE: return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT; case EcorePackage.EREFERENCE__DERIVED: return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT; case EcorePackage.EREFERENCE__ECONTAINING_CLASS: return getEContainingClass() != null; case EcorePackage.EREFERENCE__CONTAINMENT: return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT; case EcorePackage.EREFERENCE__CONTAINER: return isContainer() != CONTAINER_EDEFAULT; case EcorePackage.EREFERENCE__RESOLVE_PROXIES: return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT; case EcorePackage.EREFERENCE__EOPPOSITE: return eOpposite != null; case EcorePackage.EREFERENCE__EREFERENCE_TYPE: return basicGetEReferenceType() != null; case EcorePackage.EREFERENCE__EKEYS: return eKeys != null && !eKeys.isEmpty(); } return eDynamicIsSet(featureID);
switch (featureID) { case EcorePackage.ESTRUCTURAL_FEATURE__EANNOTATIONS: return eAnnotations != null && !eAnnotations.isEmpty(); case EcorePackage.ESTRUCTURAL_FEATURE__NAME: return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); case EcorePackage.ESTRUCTURAL_FEATURE__ORDERED: return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__UNIQUE: return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__LOWER_BOUND: return lowerBound != LOWER_BOUND_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__UPPER_BOUND: return upperBound != UPPER_BOUND_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__MANY: return isMany() != MANY_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__REQUIRED: return isRequired() != REQUIRED_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__ETYPE: return isSetEType(); case EcorePackage.ESTRUCTURAL_FEATURE__EGENERIC_TYPE: return isSetEGenericType(); case EcorePackage.ESTRUCTURAL_FEATURE__CHANGEABLE: return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__VOLATILE: return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__TRANSIENT: return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL: return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral); case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE: return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); case EcorePackage.ESTRUCTURAL_FEATURE__UNSETTABLE: return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__DERIVED: return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT; case EcorePackage.ESTRUCTURAL_FEATURE__ECONTAINING_CLASS: return getEContainingClass() != null; } return eDynamicIsSet(featureID);

Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/ecore/impl/EReferenceImpl.java |  | File path: /emf-2.4.1/src/org/eclipse/emf/ecore/impl/EStructuralFeatureImpl.java
Method name: `boolean eIsSet(int)` |  | Method name: `boolean eIsSet(int)`
Number of AST nodes: 50 |  | Number of AST nodes: 38

1

    switch (featureID)↵

1

    switch (featureID)↵

2

        {↵

2

        {↵

3

          case EcorePackage.EREFERENCE__EANNOTATIONS:↵

3

          case EcorePackage.ESTRUCTURAL_FEATURE__EANNOTATIONS:↵

4

            return eAnnotations != null && !eAnnotations.isEmpty();↵

4

            return eAnnotations != null && !eAnnotations.isEmpty();↵

5

          case EcorePackage.EREFERENCE__NAME:↵

5

          case EcorePackage.ESTRUCTURAL_FEATURE__NAME:↵

6

            return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);↵

6

            return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);↵

7

          case EcorePackage.EREFERENCE__ORDERED:↵

7

          case EcorePackage.ESTRUCTURAL_FEATURE__ORDERED:↵

8

            return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;↵

8

            return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;↵

9

          case EcorePackage.EREFERENCE__UNIQUE:↵

9

          case EcorePackage.ESTRUCTURAL_FEATURE__UNIQUE:↵

10

            return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;↵

10

            return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;↵

11

          case EcorePackage.EREFERENCE__LOWER_BOUND:↵

11

          case EcorePackage.ESTRUCTURAL_FEATURE__LOWER_BOUND:↵

12

            return lowerBound != LOWER_BOUND_EDEFAULT;↵

12

            return lowerBound != LOWER_BOUND_EDEFAULT;↵

13

          case EcorePackage.EREFERENCE__UPPER_BOUND:↵

13

          case EcorePackage.ESTRUCTURAL_FEATURE__UPPER_BOUND:↵

14

            return upperBound != UPPER_BOUND_EDEFAULT;↵

14

            return upperBound != UPPER_BOUND_EDEFAULT;↵

15

          case EcorePackage.EREFERENCE__MANY:↵

15

          case EcorePackage.ESTRUCTURAL_FEATURE__MANY:↵

16

            return isMany() != MANY_EDEFAULT;↵

16

            return isMany() != MANY_EDEFAULT;↵

17

          case EcorePackage.EREFERENCE__REQUIRED:↵

17

          case EcorePackage.ESTRUCTURAL_FEATURE__REQUIRED:↵

18

            return isRequired() != REQUIRED_EDEFAULT;↵

18

            return isRequired() != REQUIRED_EDEFAULT;↵

19

          case EcorePackage.EREFERENCE__ETYPE:↵

19

          case EcorePackage.ESTRUCTURAL_FEATURE__ETYPE:↵

20

            return isSetEType();↵

20

            return isSetEType();↵

21

          case EcorePackage.EREFERENCE__EGENERIC_TYPE:↵

21

          case EcorePackage.ESTRUCTURAL_FEATURE__EGENERIC_TYPE:↵

22

            return isSetEGenericType();↵

22

            return isSetEGenericType();↵

23

          case EcorePackage.EREFERENCE__CHANGEABLE:↵

23

          case EcorePackage.ESTRUCTURAL_FEATURE__CHANGEABLE:↵

24

            return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;↵

24

            return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;↵

25

          case EcorePackage.EREFERENCE__VOLATILE:↵

25

          case EcorePackage.ESTRUCTURAL_FEATURE__VOLATILE:↵

26

            return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;↵

26

            return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;↵

27

          case EcorePackage.EREFERENCE__TRANSIENT:↵

27

          case EcorePackage.ESTRUCTURAL_FEATURE__TRANSIENT:↵

28

            return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;↵

28

            return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;↵

29

          case EcorePackage.EREFERENCE__DEFAULT_VALUE_LITERAL:↵

29

          case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL:↵

30

            return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);↵

30

            return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);↵

31

          case EcorePackage.EREFERENCE__DEFAULT_VALUE:↵

31

          case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE:↵

32

            return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());↵

32

            return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());↵

33

          case EcorePackage.EREFERENCE__UNSETTABLE:↵

33

          case EcorePackage.ESTRUCTURAL_FEATURE__UNSETTABLE:↵

34

            return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;↵

34

            return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;↵

35

          case EcorePackage.EREFERENCE__DERIVED:↵

35

          case EcorePackage.ESTRUCTURAL_FEATURE__DERIVED:↵

36

            return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;↵

36

            return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;↵

37

          case EcorePackage.EREFERENCE__ECONTAINING_CLASS:↵

37

          case EcorePackage.ESTRUCTURAL_FEATURE__ECONTAINING_CLASS:↵

38

            return getEContainingClass() != null;↵

38

            return getEContainingClass() != null;↵

39

          case EcorePackage.EREFERENCE__CONTAINMENT:↵

40

            return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT;↵

41

          case EcorePackage.EREFERENCE__CONTAINER:↵

42

            return isContainer() != CONTAINER_EDEFAULT;↵

43

          case EcorePackage.EREFERENCE__RESOLVE_PROXIES:↵

44

            return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT;↵

45

          case EcorePackage.EREFERENCE__EOPPOSITE:↵

46

            return eOpposite != null;↵

47

          case EcorePackage.EREFERENCE__EREFERENCE_TYPE:↵

48

            return basicGetEReferenceType() != null;↵

49

          case EcorePackage.EREFERENCE__EKEYS:↵

50

            return eKeys != null && !eKeys.isEmpty();↵

51

        }↵

39

        }↵

52

        return eDynamicIsSet(featureID);

40

        return eDynamicIsSet(featureID);

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 different classes having the same super class
Number of node comparisons | 8

1. {Non-refactorable}

   Mapping Summary
   Number of mapped statements | 4
   Number of unmapped statements in the first code fragment | 49
   Number of unmapped statements in the second code fragment | 37
   Time elapsed for statement mapping (ms) | 174.1
   Clone type | Type 3

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

   1

       switch (featureID)

   2

       case EcorePackage.ESTRUCTURAL_FEATURE__EANNOTATIONS:

   3 | return eAnnotations != null && ! eAnnotations.isEmpty();

   Preondition Violations
   Unmatched return eAnnotations != null && !eAnnotations.isEmpty();

   3

       return eAnnotations != null && !eAnnotations.isEmpty();

   4

       case EcorePackage.ESTRUCTURAL_FEATURE__NAME:

   5 | return NAME_EDEFAULT == null ? name != null : ! NAME_EDEFAULT.equals(name);

   Preondition Violations
   Unmatched return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   5

       return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   6

       case EcorePackage.ESTRUCTURAL_FEATURE__ORDERED:

   7 | return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   7

       return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   8

       case EcorePackage.ESTRUCTURAL_FEATURE__UNIQUE:

   9 | return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   9

       return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   10

       case EcorePackage.ESTRUCTURAL_FEATURE__LOWER_BOUND:

   11 | return lowerBound != LOWER_BOUND_EDEFAULT;

   Preondition Violations
   Unmatched return lowerBound != LOWER_BOUND_EDEFAULT;

   11

       return lowerBound != LOWER_BOUND_EDEFAULT;

   12

       case EcorePackage.ESTRUCTURAL_FEATURE__UPPER_BOUND:

   13 | return upperBound != UPPER_BOUND_EDEFAULT;

   Preondition Violations
   Unmatched return upperBound != UPPER_BOUND_EDEFAULT;

   13

       return upperBound != UPPER_BOUND_EDEFAULT;

   14

       case EcorePackage.ESTRUCTURAL_FEATURE__MANY:

   15 | return isMany() != MANY_EDEFAULT;

   Preondition Violations
   Unmatched return isMany() != MANY_EDEFAULT;

   15

       return isMany() != MANY_EDEFAULT;

   16

       case EcorePackage.ESTRUCTURAL_FEATURE__REQUIRED:

   17 | return isRequired() != REQUIRED_EDEFAULT;

   Preondition Violations
   Unmatched return isRequired() != REQUIRED_EDEFAULT;

   17

       return isRequired() != REQUIRED_EDEFAULT;

   18

       case EcorePackage.ESTRUCTURAL_FEATURE__ETYPE:

   19 | return isSetEType();

   Preondition Violations
   Unmatched statement return isSetEType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return isSetEType();

   19

       return isSetEType();

   20

       case EcorePackage.ESTRUCTURAL_FEATURE__EGENERIC_TYPE:

   21 | return isSetEGenericType();

   Preondition Violations
   Unmatched statement return isSetEGenericType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return isSetEGenericType();

   21

       return isSetEGenericType();

   22

       case EcorePackage.ESTRUCTURAL_FEATURE__CHANGEABLE:

   23 | return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   23

       return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   24

       case EcorePackage.ESTRUCTURAL_FEATURE__VOLATILE:

   25 | return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   25

       return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   26

       case EcorePackage.ESTRUCTURAL_FEATURE__TRANSIENT:

   27 | return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   27

       return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   28

       case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL:

   29 | return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : ! DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   Preondition Violations
   Unmatched return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   29

       return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   30

       case EcorePackage.ESTRUCTURAL_FEATURE__DEFAULT_VALUE:

   31 | return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : ! DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   Preondition Violations
   Unmatched statement return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   31

       return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   32

       case EcorePackage.ESTRUCTURAL_FEATURE__UNSETTABLE:

   33 | return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   33

       return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   34

       case EcorePackage.ESTRUCTURAL_FEATURE__DERIVED:

   35 | return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   35

       return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   36

       case EcorePackage.ESTRUCTURAL_FEATURE__ECONTAINING_CLASS:

   37 | return getEContainingClass() != null;

   Preondition Violations
   Unmatched return getEContainingClass() != null;

   37

       return getEContainingClass() != null;

   1

       switch (featureID)

   2

       case EcorePackage.EREFERENCE__EANNOTATIONS:

   3

       return eAnnotations != null && !eAnnotations.isEmpty();

   3 | return eAnnotations != null && ! eAnnotations.isEmpty();

   Preondition Violations
   Unmatched return eAnnotations != null && !eAnnotations.isEmpty();

   4

       case EcorePackage.EREFERENCE__NAME:

   5

       return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   5 | return NAME_EDEFAULT == null ? name != null : ! NAME_EDEFAULT.equals(name);

   Preondition Violations
   Unmatched return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   6

       case EcorePackage.EREFERENCE__ORDERED:

   7

       return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   7 | return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;

   8

       case EcorePackage.EREFERENCE__UNIQUE:

   9

       return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   9 | return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;

   10

       case EcorePackage.EREFERENCE__LOWER_BOUND:

   11

       return lowerBound != LOWER_BOUND_EDEFAULT;

   11 | return lowerBound != LOWER_BOUND_EDEFAULT;

   Preondition Violations
   Unmatched return lowerBound != LOWER_BOUND_EDEFAULT;

   12

       case EcorePackage.EREFERENCE__UPPER_BOUND:

   13

       return upperBound != UPPER_BOUND_EDEFAULT;

   13 | return upperBound != UPPER_BOUND_EDEFAULT;

   Preondition Violations
   Unmatched return upperBound != UPPER_BOUND_EDEFAULT;

   14

       case EcorePackage.EREFERENCE__MANY:

   15

       return isMany() != MANY_EDEFAULT;

   15 | return isMany() != MANY_EDEFAULT;

   Preondition Violations
   Unmatched return isMany() != MANY_EDEFAULT;

   16

       case EcorePackage.EREFERENCE__REQUIRED:

   17

       return isRequired() != REQUIRED_EDEFAULT;

   17 | return isRequired() != REQUIRED_EDEFAULT;

   Preondition Violations
   Unmatched return isRequired() != REQUIRED_EDEFAULT;

   18

       case EcorePackage.EREFERENCE__ETYPE:

   19

       return isSetEType();

   19 | return isSetEType();

   Preondition Violations
   Unmatched statement return isSetEType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return isSetEType();

   20

       case EcorePackage.EREFERENCE__EGENERIC_TYPE:

   21

       return isSetEGenericType();

   21 | return isSetEGenericType();

   Preondition Violations
   Unmatched statement return isSetEGenericType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return isSetEGenericType();

   22

       case EcorePackage.EREFERENCE__CHANGEABLE:

   23

       return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   23 | return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;

   24

       case EcorePackage.EREFERENCE__VOLATILE:

   25

       return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   25 | return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;

   26

       case EcorePackage.EREFERENCE__TRANSIENT:

   27

       return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   27 | return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;

   28

       case EcorePackage.EREFERENCE__DEFAULT_VALUE_LITERAL:

   29

       return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   29 | return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : ! DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   Preondition Violations
   Unmatched return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   30

       case EcorePackage.EREFERENCE__DEFAULT_VALUE:

   31

       return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   31 | return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : ! DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   Preondition Violations
   Unmatched statement return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   32

       case EcorePackage.EREFERENCE__UNSETTABLE:

   33

       return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   33 | return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;

   34

       case EcorePackage.EREFERENCE__DERIVED:

   35

       return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   35 | return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;

   36

       case EcorePackage.EREFERENCE__ECONTAINING_CLASS:

   37

       return getEContainingClass() != null;

   37 | return getEContainingClass() != null;

   Preondition Violations
   Unmatched return getEContainingClass() != null;

   38

       case EcorePackage.EREFERENCE__CONTAINMENT:

   39

       return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT;

   39 | return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT;

   40

       case EcorePackage.EREFERENCE__CONTAINER:

   41

       return isContainer() != CONTAINER_EDEFAULT;

   41 | return isContainer() != CONTAINER_EDEFAULT;

   Preondition Violations
   Unmatched statement return isContainer() != CONTAINER_EDEFAULT; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return isContainer() != CONTAINER_EDEFAULT;

   42

       case EcorePackage.EREFERENCE__RESOLVE_PROXIES:

   43

       return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT;

   43 | return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT;

   Preondition Violations
   Unmatched return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT;

   44

       case EcorePackage.EREFERENCE__EOPPOSITE:

   45

       return eOpposite != null;

   45 | return eOpposite != null;

   Preondition Violations
   Unmatched return eOpposite != null;

   46

       case EcorePackage.EREFERENCE__EREFERENCE_TYPE:

   47

       return basicGetEReferenceType() != null;

   47 | return basicGetEReferenceType() != null;

   Preondition Violations
   Unmatched statement return basicGetEReferenceType() != null; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   Unmatched return basicGetEReferenceType() != null;

   48

       case EcorePackage.EREFERENCE__EKEYS:

   49

       return eKeys != null && !eKeys.isEmpty();

   49 | return eKeys != null && ! eKeys.isEmpty();

   Preondition Violations
   Unmatched return eKeys != null && !eKeys.isEmpty();

   5

       return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   5

       return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);

   29

       return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   29

       return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);

   31

       return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   31

       return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());

   50

       return eDynamicIsSet(featureID);

   38

       return eDynamicIsSet(featureID);

   Precondition Violations (50)
   Row | Violation
   --- | ---
   1 | Unmatched return eAnnotations != null && !eAnnotations.isEmpty();
   2 | Unmatched return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
   3 | Unmatched return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;
   4 | Unmatched return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;
   5 | Unmatched return lowerBound != LOWER_BOUND_EDEFAULT;
   6 | Unmatched return upperBound != UPPER_BOUND_EDEFAULT;
   7 | Unmatched return isMany() != MANY_EDEFAULT;
   8 | Unmatched return isRequired() != REQUIRED_EDEFAULT;
   9 | Unmatched statement return isSetEType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   10 | Unmatched return isSetEType();
   11 | Unmatched statement return isSetEGenericType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   12 | Unmatched return isSetEGenericType();
   13 | Unmatched return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;
   14 | Unmatched return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;
   15 | Unmatched return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;
   16 | Unmatched return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);
   17 | Unmatched statement return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   18 | Unmatched return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());
   19 | Unmatched return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;
   20 | Unmatched return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;
   21 | Unmatched return getEContainingClass() != null;
   22 | Unmatched return eAnnotations != null && !eAnnotations.isEmpty();
   23 | Unmatched return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
   24 | Unmatched return ((eFlags & ORDERED_EFLAG) != 0) != ORDERED_EDEFAULT;
   25 | Unmatched return ((eFlags & UNIQUE_EFLAG) != 0) != UNIQUE_EDEFAULT;
   26 | Unmatched return lowerBound != LOWER_BOUND_EDEFAULT;
   27 | Unmatched return upperBound != UPPER_BOUND_EDEFAULT;
   28 | Unmatched return isMany() != MANY_EDEFAULT;
   29 | Unmatched return isRequired() != REQUIRED_EDEFAULT;
   30 | Unmatched statement return isSetEType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   31 | Unmatched return isSetEType();
   32 | Unmatched statement return isSetEGenericType(); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   33 | Unmatched return isSetEGenericType();
   34 | Unmatched return ((eFlags & CHANGEABLE_EFLAG) != 0) != CHANGEABLE_EDEFAULT;
   35 | Unmatched return ((eFlags & VOLATILE_EFLAG) != 0) != VOLATILE_EDEFAULT;
   36 | Unmatched return ((eFlags & TRANSIENT_EFLAG) != 0) != TRANSIENT_EDEFAULT;
   37 | Unmatched return DEFAULT_VALUE_LITERAL_EDEFAULT == null ? defaultValueLiteral != null : !DEFAULT_VALUE_LITERAL_EDEFAULT.equals(defaultValueLiteral);
   38 | Unmatched statement return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue()); cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   39 | Unmatched return DEFAULT_VALUE_EDEFAULT == null ? getDefaultValue() != null : !DEFAULT_VALUE_EDEFAULT.equals(getDefaultValue());
   40 | Unmatched return ((eFlags & UNSETTABLE_EFLAG) != 0) != UNSETTABLE_EDEFAULT;
   41 | Unmatched return ((eFlags & DERIVED_EFLAG) != 0) != DERIVED_EDEFAULT;
   42 | Unmatched return getEContainingClass() != null;
   43 | Unmatched return ((eFlags & CONTAINMENT_EFLAG) != 0) != CONTAINMENT_EDEFAULT;
   44 | Unmatched statement return isContainer() != CONTAINER_EDEFAULT; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   45 | Unmatched return isContainer() != CONTAINER_EDEFAULT;
   46 | Unmatched return ((eFlags & RESOLVE_PROXIES_EFLAG) != 0) != RESOLVE_PROXIES_EDEFAULT;
   47 | Unmatched return eOpposite != null;
   48 | Unmatched statement return basicGetEReferenceType() != null; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
   49 | Unmatched return basicGetEReferenceType() != null;
   50 | Unmatched return eKeys != null && !eKeys.isEmpty();