case MODASSIGN: return lhs.assign( operation(lhsValue, rhs, MOD), strictJava ); case LSHIFTASSIGN: case LSHIFTASSIGNX: return lhs.assign( operation(lhsValue, rhs, LSHIFT), strictJava );
case RSIGNEDSHIFTASSIGNX: return lhs.assign( operation(lhsValue, rhs, RSIGNEDSHIFT ), strictJava ); case RUNSIGNEDSHIFTASSIGN: case RUNSIGNEDSHIFTASSIGNX: return lhs.assign( operation(lhsValue, rhs, RUNSIGNEDSHIFT), strictJava );
Clone fragments detected by clone detection tool
File path: /jEdit-4.2/src/bsh/BSHAssignment.java File path: /jEdit-4.2/src/bsh/BSHAssignment.java
Method name: Object eval(CallStack, Interpreter) Method name: Object eval(CallStack, Interpreter)
Number of AST nodes: 5 Number of AST nodes: 5
1
case MODASSIGN:
1
case RSIGNEDSHIFTASSIGNX:
2
	                return lhs.assign( 
2
	                return lhs.assign( 
3
						operation(lhsValue, rhs, MOD), strictJava );
3
					operation(lhsValue, rhs, RSIGNEDSHIFT ), strictJava );
4
	            case LSHIFTASSIGN:
4
	            case RUNSIGNEDSHIFTASSIGN:
5
	            case LSHIFTASSIGNX:
5
	            case RUNSIGNEDSHIFTASSIGNX:
6
	                return lhs.assign( 
6
	                return lhs.assign( 
7
						operation(lhsValue, rhs, LSHIFT), 
7
						operation(lhsValue, rhs, RUNSIGNEDSHIFT), 
8
strictJava );
8
						strictJava );
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.0
Clones locationClones are in the same method
Number of node comparisons17
  1. {Refactorable}
    Mapping Summary
    Number of mapped statements5
    Number of unmapped statements in the first code fragment0
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 2
    Mapped Statements
    ID Statement ID Statement
    37
    case MODASSIGN:
    37
    case MODASSIGN:
    43
    case RSIGNEDSHIFTASSIGNX:
    Differences
    Expression1Expression2Difference
    MODASSIGNRSIGNEDSHIFTASSIGNXVARIABLE_NAME_MISMATCH
    43
    case RSIGNEDSHIFTASSIGNX:
    38
    return lhs.assign(operation(lhsValue, rhs, MOD), strictJava);
    38
    return lhs.assign(operation(lhsValue, rhs, MOD), strictJava);
    44
    return lhs.assign(operation(lhsValue, rhs, RSIGNEDSHIFT), strictJava);
    Differences
    Expression1Expression2Difference
    MODRSIGNEDSHIFTVARIABLE_NAME_MISMATCH
    44
    return lhs.assign(operation(lhsValue, rhs, RSIGNEDSHIFT), strictJava);
    39
    case LSHIFTASSIGN:
    39
    case LSHIFTASSIGN:
    45
    case RUNSIGNEDSHIFTASSIGN:
    Differences
    Expression1Expression2Difference
    LSHIFTASSIGNRUNSIGNEDSHIFTASSIGNVARIABLE_NAME_MISMATCH
    45
    case RUNSIGNEDSHIFTASSIGN:
    40
    case LSHIFTASSIGNX:
    40
    case LSHIFTASSIGNX:
    46
    case RUNSIGNEDSHIFTASSIGNX:
    Differences
    Expression1Expression2Difference
    LSHIFTASSIGNXRUNSIGNEDSHIFTASSIGNXVARIABLE_NAME_MISMATCH
    46
    case RUNSIGNEDSHIFTASSIGNX:
    41
    return lhs.assign(operation(lhsValue, rhs, LSHIFT), strictJava);
    41
    return lhs.assign(operation(lhsValue, rhs, LSHIFT), strictJava);
    47
    return lhs.assign(operation(lhsValue, rhs, RUNSIGNEDSHIFT), strictJava);
    Differences
    Expression1Expression2Difference
    LSHIFTRUNSIGNEDSHIFTVARIABLE_NAME_MISMATCH
    47
    return lhs.assign(operation(lhsValue, rhs, RUNSIGNEDSHIFT), strictJava);
    Precondition Violations (0)
    Row Violation