do { if (module.hasClassVariable(name)) { return module.storeClassVariable(name, value); } } while ((module = module.getSuperClass()) != null);
for (VariableTableEntry e = table[hash & (table.length - 1)]; e != null; e = e.next) { if (hash == e.hash && name.equals(e.name)) { return true; } }
Clone fragments detected by clone detection tool
File path: /jruby-1.4.0/src/org/jruby/RubyModule.java File path: /jruby-1.4.0/src/org/jruby/runtime/builtin/InstanceVariableTable.java
Method name: IRubyObject setClassVar(String, IRubyObject) Method name: boolean hashContains(String)
Number of AST nodes: 3 Number of AST nodes: 3
1
do {
2
            if (module.hasClassVariable(name)) {
3
                return module.storeClassVariable(name, val
1
for (VariableTableEntry e = table[hash & (table.length - 1)]; e != null; e = e.next) {
2
            if (hash == e.hash && name.equals(e.name)) {
4
ue);
3
                return true;
5
            }
4
            }
6
        } while ((module = module.getSuperClass()) != null);
5
        }
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.1
Clones locationClones are in different classes
Number of node comparisons1