synchronized(classProviders) { if (!classProviders.contains(provider)) { classProviders.add(provider); } }
for (SymbolEntry e = table[index = hash & (table.length - 1)]; e != null; e = e.next) { if (hash == e.hash && name.equals(e.name)) { return e.symbol; } }
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/RubySymbol.java
Method name: void addClassProvider(ClassProvider) Method name: RubySymbol createSymbol(String, ByteList, int, SymbolEntry[])
Number of AST nodes: 3 Number of AST nodes: 3
1
synchronized(classProviders) {
2
                if (!classProviders.contains(provider)) {
3
                    classProviders.add(provider);
1
for (SymbolEntry e = table[index = hash & (table.length - 1)]; e != null; e = e.next) {
2
                    if (hash == e.hash && name.equals(e.name)) {
3
                        return e.symbol;
4
                }
4
                    }
5
            }
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