概要
require_relative(relative_feature) -> bool
詳細
Ruby ライブラリ relative_feature を現在のファイルからの相対パスでロードします。
拡張子補完を行い、 同じファイルの複数回ロードはしません。
ライブラリのロードに成功した時には true を返し、ロードした feature の名前を(拡 張子も含めて) 変数 $" に追加します。
ただし、feature の名前が既に $" に含まれていた場合はロードせずに false を返します。
サンプルコード
def hoge puts "hoge" end
def grep_loaded(filename) file = $".grep(filename).first file ? File.basename(file) : '' end # require 前に $" を確認 puts grep_loaded(/hoge/) # 初回 load 成功のため true を返す ret = require_relative './hoge/hoge' puts grep_loaded(/hoge\/hoge/) puts ret # load済みのため false を返す ret = require_relative './hoge/hoge' puts grep_loaded(/hoge\/hoge/) puts ret
出力
hoge.rb true hoge.rb false