方法
- #
- C
- E
- F
- L
- N
- P
- T
- U
已包含模組
屬性
[RW](讀寫) | glob(萬用字元) |
類別公開方法
new(root, current, paths, options = {}) 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 119 def initialize(root, current, paths, options = {}) @paths = paths @current = current @root = root @glob = options[:glob] @exclude = options[:exclude] options[:autoload_once] ? autoload_once! : skip_autoload_once! options[:eager_load] ? eager_load! : skip_eager_load! options[:autoload] ? autoload! : skip_autoload! options[:load_path] ? load_path! : skip_load_path! end
實例公開方法
<<(path) 連結
別名:push
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 171 def <<(path) @paths << path end
children() 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 136 def children keys = @root.keys.find_all { |k| k.start_with?(@current) && k != @current } @root.values_at(*keys.sort) end
concat(paths) 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 176 def concat(paths) @paths.concat paths end
each(&block) 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 167 def each(&block) @paths.each(&block) end
existent() 連結
僅回傳檔案系統中存在的展開路徑。
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 220 def existent expanded.select do |f| does_exist = File.exist?(f) if !does_exist && File.symlink?(f) raise "File #{f.inspect} is a symlink that does not point to a valid file" end does_exist end end
existent_directories() 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 231 def existent_directories expanded.select { |d| File.directory?(d) } end
expanded() 連結
將所有路徑相對於根目錄展開,並回傳所有不重複的值。
別名:to_a
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 201 def expanded raise "You need to set a path root" unless @root.path result = [] each do |path| path = File.expand_path(path, @root.path) if @glob && File.directory?(path) result.concat files_in(path) else result << path end end result.uniq! result end
first() 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 143 def first expanded.first end
last() 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 147 def last expanded.last end
paths() 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 188 def paths raise "You need to set a path root" unless @root.path map do |p| Pathname.new(@root.path).join(p) end end
unshift(*paths) 連結
來源:顯示 | 在 GitHub 上
# File railties/lib/rails/paths.rb, line 180 def unshift(*paths) @paths.unshift(*paths) end