提交 cbac1fdf 编写于 作者: E eileencodes

Change *args to arg in CallbackSequence#call

`CallbackSequence#call` can only ever take one argument. Using `*args`
here produces unnecessary array allocations. Since it only ever takes
one argument we should use `arg` instead of `*args`.
上级 5eaeb370
......@@ -490,17 +490,17 @@ def after(&after)
end
def around(&around)
CallbackSequence.new do |*args|
around.call(*args) {
self.call(*args)
CallbackSequence.new do |arg|
around.call(arg) {
self.call(arg)
}
end
end
def call(*args)
@before.each { |b| b.call(*args) }
value = @call.call(*args)
@after.each { |a| a.call(*args) }
def call(arg)
@before.each { |b| b.call(arg) }
value = @call.call(arg)
@after.each { |a| a.call(arg) }
value
end
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册