Class: Shell::Glob

Inherits:
BuiltInCommand show all
Defined in:
lib/shell/builtin-command.rb

Instance Attribute Summary

Attributes inherited from Filter

#input

Instance Method Summary collapse

Methods inherited from BuiltInCommand

#active?, #wait?

Methods inherited from Filter

#+, #<, #>, #>>, #inspect, #to_a, #to_s, #|

Constructor Details

#initialize(sh, pattern) ⇒ Glob

Returns a new instance of Glob.



66
67
68
69
70
# File 'lib/shell/builtin-command.rb', line 66

def initialize(sh, pattern)
  super sh

  @pattern = pattern
end

Instance Method Details

#each(rs = nil) ⇒ Object



72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/shell/builtin-command.rb', line 72

def each(rs = nil)
  if @pattern[0] == ?/
    @files = Dir[@pattern]
  else
    prefix = @shell.pwd+"/"
    @files = Dir[prefix+@pattern].collect{|p| p.sub(prefix, "")}
  end
  rs =  @shell.record_separator unless rs
  for f in @files
    yield f+rs
  end
end