我需要在EventMachine::Deferrable
中包含Faraday::Response
,但前提是在reactor循环运行时创建响应。我知道我可以在响应对象而不是类中包含一个模块,但在我的情况下,由于编写上下文代码的方式,我不能这样做。
我有一个循环运行时调用的方法,也许我可以在那里做到?下面的代码不起作用,因为它只是在方法的命名空间中创建一个新类。
def f
module Faraday
class Response
include EventMachine::Deferrable
end
end
...
end
语言专家的任何建议?
答案 0 :(得分:0)
到目前为止我是这样做的。有没有更好的方法?
module Faraday
class Response
alias :initialize_old :initialize
def initialize env=nil
initialize_old env
extend EventMachine::Deferrable if EventMachine.reactor_running?
end
end
end