Ruby 将数据从函数传递到同一类中的另一个函数
我有以下课程:Ruby 将数据从函数传递到同一类中的另一个函数,ruby,Ruby,我有以下课程: class Foo def [](*files) end def read(file) end end 我想调用如下所示的函数: bar = Foo.new bar['todo.txt'].read 有没有办法使这种语法成为可能?使用实例变量在实例方法之间共享上下文 class Foo def [](*files) @files = files self end def read(file = nil) if file
class Foo
def [](*files)
end
def read(file)
end
end
我想调用如下所示的函数:
bar = Foo.new
bar['todo.txt'].read
有没有办法使这种语法成为可能?使用实例变量在实例方法之间共享上下文
class Foo
def [](*files)
@files = files
self
end
def read(file = nil)
if file
File.read(file)
else
@files.map{|file| File.read(file)}.join
end
end
end
使用实例变量在实例方法之间共享上下文
class Foo
def [](*files)
@files = files
self
end
def read(file = nil)
if file
File.read(file)
else
@files.map{|file| File.read(file)}.join
end
end
end
如果您希望能够链接这些方法,我相信您必须从
[]
返回self
class Foo
attr_accessor :files
def [](*files)
@files = files
self
end
def read
p @files
end
end
如果您希望能够链接这些方法,我相信您必须从
[]
返回self
class Foo
attr_accessor :files
def [](*files)
@files = files
self
end
def read
p @files
end
end