« [Ruby] ImageScience | トップページ | [Ruby] nanoc »

2009年8月15日 (土)

[Ruby] flay


1.4.0が公開されました(ruby-talk:343901)。



コードの構造が同じかどうかを判定するツール。
一部のメソッド名の変更など4つの改訂。



試してみた。



$ sudo gem install flay
$ cat fuga.rb
def hoge(i)
(1..i).to_a.each do |k|
puts k
end
end
 
def fuga(i)
(1..i).to_a.each do |k|
puts k
end
end
 
hoge(5)
fuga(5)
$ flay fuga.rb
flay.rb:171:in `block in process_sexp': undefined method `<' for nil:NilClass


ということで ruby 1.9.2dev (2009-08-14 trunk 24537) [i686-linux] ではエラーになってしまった。



ちなみに、flay 1.3.0 だとこうなります。



$ flay fuga.rb
Total score (lower is better) = 32
 
 
1) Similar code found in :defn (mass = 32)
fuga.rb:1
fuga.rb:7


つまり、hoge と fuga は同じ構造のメソッドだということですね。


|

« [Ruby] ImageScience | トップページ | [Ruby] nanoc »

コメント

この記事へのコメントは終了しました。