ruby-trunk-changes r53967 - r53974

今日は主に fileutils.rb のリファクタリングがありました。

nobu: r53967 2016-02-29 14:54:24 +0900

misc/ruby-style.el に使いかたというか、load-path にコピーして置いてくださいということをコメントに追記しています。

svn: r53968 2016-02-29 14:54:25 +0900

version.h の日付更新。

nobu: r53969 2016-02-29 16:31:56 +0900

tool/mkconfig.rb でクロスコンパイル時を検出するために CROSS_COMPILING というマクロをチェックしていたのを -cross_compiling オプションで指定するようにしています。しかしこの $cross_compiling というグローバル変数への代入はどこで行われているんだろう…。
[追記]shebang に -s オプションが渡されていて、この機能によるものだそうです。 -s オプション、知らなかった…[/追記]

nobu: r53970 2016-02-29 16:51:15 +0900

Array#push の rdoc 用コメントのサンプルコードで配列リテラルの最後の要素の後にカンマがあったのを修正しています。 https://github.com/ruby/ruby/pull/1279

nobu: r53971 2016-02-29 17:36:28 +0900

標準添付ライブラリ fileutils でクラスメソッドを定義するのに def FileUtils.commands のような記法から def self.commands のような self を使った記法に統一しています。

nobu: r53972 2016-02-29 17:36:29 +0900

標準添付ライブラリ fileutils で Verbose, NoWrite, DryRun などの Module でクラスメソッドに public 宣言をするところで each でループを回してひとつひとつ public を呼び出していたのを public は複数の引数を受け取れるので配列を展開して1度に引数に渡すように効率化しています。

nobu: r53973 2016-02-29 17:36:30 +0900

r53972 と同様に標準添付ライブラリ fileutils の Verbose, NoWrite, DryRun などの Module で private の呼び出しも1回の呼び出しに複数の引数を渡すように変更しています。

nobu: r53974 2016-02-29 21:22:17 +0900

標準添付ライブラリ fileutils の LowMethods という Module で dry run を実現するため空のメソッドを実装しているところで module_eval で必要なメソッドを全て定義していたのを _do_nothing というメソッドを1つ定義して、全てそのメソッドへの alias として定義しなおすように変更しています。