Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > rakeライブラリ > Rake::FileListクラス
class Rake::FileList
クラスの継承リスト: Rake::FileList < Rake::Cloneable < Object < Kernel < BasicObject
Abstract
このクラスは Array と基本的には同じです。
ファイルの操作をほんの少しだけ、簡単にするためのヘルパーメソッドがいくつか定義されています。
Rake::FileList は与えられた glob のパターンを使ってすぐにファイルを検索せずに、 後で評価するためにそれを保存しておきます。
このことは、多くのファイルにマッチする多くの Rake::FileList を使用できることを意味します。 実際に使用されると Rake::FileList が保持するパターンが評価されます。
メソッドの委譲
特異メソッド
self[*args] -> Rake::FileList
-
与えられたパターンをもとにして自身を初期化します。
- [PARAM] args:
- パターンを指定します。
new(*patterns) {|self| ... }
-
与えられたパターンをもとにして自身を初期化します。
ブロックが与えられている場合は、自身をブロックパラメータとしてブロックを評価します。
- [PARAM] patterns:
- パターンを指定します。
例:
file_list = FileList.new('lib/**/*.rb', 'test/test*.rb') pkg_files = FileList.new('lib/**/*') do |fl| fl.exclude(/\bCVS\b/) end
インスタンスメソッド
self * other -> Array | String
-
Array#* と動作を合わせるために再定義しています。
[SEE_ALSO] Array#*
self == array -> bool
-
自身を配列に変換してから与えられた配列と比較します。
- [PARAM] array:
- 比較対象の配列を指定します。
calculate_exclude_regexp
-
除外リストに含まれるパターンを適切に変換します。
clear_exclude -> self
-
登録されている除外リストをクリアします。
egrep(pattern) {|filename, count, line| ... }
-
与えられたパターンをファイルリストから gerp のように検索します。
ブロックが与えられた場合は、マッチした行の情報 (ファイル名、行番号、マッチした行) が ブロックに渡されてブロックが評価されます。ブロックが与えられなかった場合は、 標準出力に、ファイル名:行番号:マッチした行を出力します。
- [PARAM] pettern:
- 正規表現を指定します。
exclude(*patterns) {|entry| ... } -> self
-
自身から取り除くべきファイル名のパターンを自身の除外リストに登録します。
パターンとして正規表現、グロブパターン、文字列が使用可能です。 さらにブロックが与えられた場合は、ブロックを評価して真になったエントリを削除します。
グロブパターンはファイルシステムに対して展開されます。 もし、ファイルシステムに存在しないファイルを明示的にリストへ追加した場合、 グロブパターンではそのファイルをリストから削除しません。
例:
FileList['a.c', 'b.c'].exclude("a.c") # => ['b.c'] FileList['a.c', 'b.c'].exclude(/^a/) # => ['b.c'] # If "a.c" is a file, then ... FileList['a.c', 'b.c'].exclude("a.*") # => ['b.c'] # If "a.c" is not a file, then ... FileList['a.c', 'b.c'].exclude("a.*") # => ['a.c', 'b.c']
exclude?(file_name) -> bool
-
与えられたファイル名が除外される場合は、真を返します。 そうでない場合は偽を返します。
- [PARAM] file_name:
- ファイル名を指定します。
existing -> Rake::FileList
-
自身に含まれるファイルのうちファイルシステムに存在するファイルのみを 含む Rake::FileList を返します。
existing! -> self
-
自身に含まれるファイルのうちファイルシステムに存在するファイルのみを 含むように自身を変更して返します。
ext(newext = '') -> Rake::FileList
-
各要素に String#ext を適用した新しい Rake::FileList を返します。
[SEE_ALSO] String#ext
gsub(pattern, replace) -> Rake::FileList
-
自身に含まれるファイルリストのそれぞれのエントリに対して String#gsub を実行し、 結果を新しい Rake::FileList として返します。
例: FileList['lib/test/file', 'x/y'].gsub(/\//, "\\") # => ['lib\\test\\file', 'x\\y']
gsub!(pattern, replace) -> self
-
自身に含まれるファイルリストのそれぞれのエントリに対して String#gsub を実行します。 自身を破壊的に変更します。
import(array) -> self
-
与えられた配列を自身にインポートします。
- [PARAM] array:
- ファイル名のリストを指定します。
include(*filenames) -> self
-
与えられたパターンを自身に追加します。
- [PARAM] filenames:
- 追加するファイル名のパターンを指定します。
例:
file_list.include("*.java", "*.cfg") file_list.include %w( math.c lib.h *.o )
is_a?(klass) -> bool
kind_of?(klass) -> bool
-
自身に Array のフリをさせます。
pathmap(spec = nil) -> Rake::FileList
-
各要素に String#pathmap を適用した新しい Rake::FileList を返します。
[SEE_ALSO] String#pathmap
resolve -> self
-
追加リストと除外リストを評価します。
sub(pattern, replace) -> Rake::FileList
-
自身に含まれるファイルリストのそれぞれのエントリに対して String#sub を実行し、 結果を新しい Rake::FileList として返します。
例:
FileList['a.c', 'b.c'].sub(/\.c$/, '.o') => ['a.o', 'b.o']
sub!(pattern, replace) -> self
-
自身に含まれるファイルリストのそれぞれのエントリに対して String#sub を実行します。 自身を破壊的に変更します。
to_a -> Array
to_ary -> Array
-
内部的な配列を返します。
to_s -> String
-
全ての要素をスペースで連結した文字列を返します。
定数
ARRAY_METHODS -> Array
-
Array に定義されているメソッドのリストです。
DEFAULT_IGNORE_PATTERNS -> Array
-
デフォルトで除外するパターンのリストです。
DEFAULT_IGNORE_PROCS
-
デフォルトで除外する手続きです。
DELEGATING_METHODS -> Array
-
委譲するメソッドのリストです。
MUST_DEFINE -> Array
-
必ず委譲しなければならない付加的なメソッドのリストです。
MUST_NOT_DEFINE -> Array
-
委譲してはいけないメソッドのリストです。
このリストに含まれているメソッドはこのクラスで定義しています。
SPECIAL_RETURN -> Array
-
Array のインスタンスを返すので委譲した後にラップする必要があるメソッドのリストです。