Get rid of Module#forward_message
This commit is contained in:
parent
028262700e
commit
1b777ef184
|
@ -62,16 +62,6 @@ class Time #:nodoc:all
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
class Module #:nodoc:all
|
|
||||||
def forward_message(forwarder, *messagesToForward)
|
|
||||||
methodDefs = messagesToForward.map do |msg|
|
|
||||||
"def #{msg}; #{forwarder}(:#{msg}); end"
|
|
||||||
end
|
|
||||||
module_eval(methodDefs.join("\n"))
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
# Copyright (C) 2002, 2003 Thomas Sondergaard
|
# Copyright (C) 2002, 2003 Thomas Sondergaard
|
||||||
# rubyzip is free software; you can redistribute it and/or
|
# rubyzip is free software; you can redistribute it and/or
|
||||||
# modify it under the terms of the ruby license.
|
# modify it under the terms of the ruby license.
|
||||||
|
|
|
@ -70,29 +70,34 @@ module Zip
|
||||||
# protected :dir
|
# protected :dir
|
||||||
|
|
||||||
class ZipFsStat
|
class ZipFsStat
|
||||||
|
|
||||||
|
class << self
|
||||||
|
|
||||||
|
def delegate_to_fs_file(*methods)
|
||||||
|
methods.each do |method|
|
||||||
|
self.class_eval <<-end_eval, __FILE__, __LINE__ + 1
|
||||||
|
def #{method} # def file?
|
||||||
|
@zipFsFile.#{method}(@entryName) # @zipFsFile.file?(@entryName)
|
||||||
|
end # end
|
||||||
|
end_eval
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
def initialize(zipFsFile, entryName)
|
def initialize(zipFsFile, entryName)
|
||||||
@zipFsFile = zipFsFile
|
@zipFsFile = zipFsFile
|
||||||
@entryName = entryName
|
@entryName = entryName
|
||||||
end
|
end
|
||||||
|
|
||||||
def forward_invoke(msg)
|
|
||||||
@zipFsFile.send(msg, @entryName)
|
|
||||||
end
|
|
||||||
|
|
||||||
def kind_of?(t)
|
def kind_of?(t)
|
||||||
super || t == ::File::Stat
|
super || t == ::File::Stat
|
||||||
end
|
end
|
||||||
|
|
||||||
forward_message :forward_invoke, :file?, :directory?, :pipe?, :chardev?
|
delegate_to_fs_file :file?, :directory?, :pipe?, :chardev?, :symlink?,
|
||||||
forward_message :forward_invoke, :symlink?, :socket?, :blockdev?
|
:socket?, :blockdev?, :readable?, :readable_real?, :writable?, :ctime,
|
||||||
forward_message :forward_invoke, :readable?, :readable_real?
|
:writable_real?, :executable?, :executable_real?, :sticky?, :owned?,
|
||||||
forward_message :forward_invoke, :writable?, :writable_real?
|
:grpowned?, :setuid?, :setgid?, :zero?, :size, :size?, :mtime, :atime
|
||||||
forward_message :forward_invoke, :executable?, :executable_real?
|
|
||||||
forward_message :forward_invoke, :sticky?, :owned?, :grpowned?
|
|
||||||
forward_message :forward_invoke, :setuid?, :setgid?
|
|
||||||
forward_message :forward_invoke, :zero?
|
|
||||||
forward_message :forward_invoke, :size, :size?
|
|
||||||
forward_message :forward_invoke, :mtime, :atime, :ctime
|
|
||||||
|
|
||||||
def blocks; nil; end
|
def blocks; nil; end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue