if ((skey.interestOps() & skey.readyOps() & (SelectionKey.OP_WRITE)) != 0) { if(skey.attachment() == descriptor) { return true; } }
for (SymbolEntry e = (table = symbolTable)[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/RubyIO.java File path: /jruby-1.4.0/src/org/jruby/RubySymbol.java
Method name: boolean waitWritable(ChannelDescriptor) Method name: RubySymbol lookup(String)
Number of AST nodes: 3 Number of AST nodes: 3
1
if ((skey.interestOps() & skey.readyOps() & (SelectionKey.OP_WRITE)) != 0) {
2
                        if(skey.attachment() == descriptor) {
3
        
1
for (SymbolEntry e = (table = symbolTable)[hash & (table.length - 1)]; e != null; e = e.next) {
2
                if (hash == e.hash && name.equals(e.name)) {
4
                    return true;
3
                    return 
5
    
4
e.symbol;
6
                    }
5
                
7
        
6
}
8
            }
7
            }
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.2
Clones locationClones are in different classes
Number of node comparisons1