We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Learn more about funding links in repositories.
Report abuse
1 parent 78b4fb9 commit ed483ceCopy full SHA for ed483ce
stdlib/promise.rb
@@ -174,8 +174,8 @@ def always(&block)
174
alias finally always
175
alias ensure always
176
177
- def trace(&block)
178
- self ^ Trace.new(block)
+ def trace(depth = nil, &block)
+ self ^ Trace.new(depth, block)
179
end
180
181
def inspect
@@ -209,9 +209,17 @@ def self.it(promise)
209
210
211
212
- def initialize(block)
+ def initialize(depth, block)
213
+ @depth = depth
214
+
215
super -> {
- block.call(*Trace.it(self).reverse)
216
+ trace = Trace.it(self).reverse
217
218
+ if depth && depth <= trace.length
219
+ trace.shift(trace.length - depth)
220
+ end
221
222
+ block.call(*trace)
223
}
224
225
0 commit comments