diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-05-14 11:39:21 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-05-14 11:39:21 +0000 |
commit | e76eb06feb024828034379797129d92522e28516 (patch) | |
tree | 1326c625c233ba2554043203a7697f5e3d4c49e5 /ruby_1_9_3/lib/shell/builtin-command.rb | |
parent | aa6e98139c8e1ea442fb2182341aaa08ff55b529 (diff) | |
parent | bede15ac5e701ed08f3fc64c2dba03d3f393c652 (diff) |
add tag v1_9_3_426v1_9_3_426
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/tags/v1_9_3_426@40737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ruby_1_9_3/lib/shell/builtin-command.rb')
-rw-r--r-- | ruby_1_9_3/lib/shell/builtin-command.rb | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/ruby_1_9_3/lib/shell/builtin-command.rb b/ruby_1_9_3/lib/shell/builtin-command.rb deleted file mode 100644 index b1ca5c38f6..0000000000 --- a/ruby_1_9_3/lib/shell/builtin-command.rb +++ /dev/null @@ -1,160 +0,0 @@ -# -# shell/builtin-command.rb - -# $Release Version: 0.7 $ -# $Revision$ -# by Keiju ISHITSUKA(keiju@ruby-lang.org) -# -# -- -# -# -# - -require "shell/filter" - -class Shell - class BuiltInCommand<Filter - def wait? - false - end - def active? - true - end - end - - class Void < BuiltInCommand - def initialize(sh, *opts) - super sh - end - - def each(rs = nil) - # do nothing - end - end - - class Echo < BuiltInCommand - def initialize(sh, *strings) - super sh - @strings = strings - end - - def each(rs = nil) - rs = @shell.record_separator unless rs - for str in @strings - yield str + rs - end - end - end - - class Cat < BuiltInCommand - def initialize(sh, *filenames) - super sh - @cat_files = filenames - end - - def each(rs = nil) - if @cat_files.empty? - super - else - for src in @cat_files - @shell.foreach(src, rs){|l| yield l} - end - end - end - end - - class Glob < BuiltInCommand - def initialize(sh, pattern) - super sh - - @pattern = pattern - end - - 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 - end - -# class Sort < Cat -# def initialize(sh, *filenames) -# super -# end -# -# def each(rs = nil) -# ary = [] -# super{|l| ary.push l} -# for l in ary.sort! -# yield l -# end -# end -# end - - class AppendIO < BuiltInCommand - def initialize(sh, io, filter) - super sh - @input = filter - @io = io - end - - def input=(filter) - @input.input=filter - for l in @input - @io << l - end - end - - end - - class AppendFile < AppendIO - def initialize(sh, to_filename, filter) - @file_name = to_filename - io = sh.open(to_filename, "a") - super(sh, io, filter) - end - - def input=(filter) - begin - super - ensure - @io.close - end - end - end - - class Tee < BuiltInCommand - def initialize(sh, filename) - super sh - @to_filename = filename - end - - def each(rs = nil) - to = @shell.open(@to_filename, "w") - begin - super{|l| to << l; yield l} - ensure - to.close - end - end - end - - class Concat < BuiltInCommand - def initialize(sh, *jobs) - super(sh) - @jobs = jobs - end - - def each(rs = nil) - while job = @jobs.shift - job.each{|l| yield l} - end - end - end -end |