summaryrefslogtreecommitdiff
path: root/lib/prime.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/prime.rb')
-rw-r--r--lib/prime.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/prime.rb b/lib/prime.rb
index d361e96720..757538db79 100644
--- a/lib/prime.rb
+++ b/lib/prime.rb
@@ -269,7 +269,15 @@ class Prime
end
# see +Enumerator+#with_index.
- alias with_index each_with_index
+ def with_index(offset = 0)
+ return enum_for(:with_index, offset) unless block_given?
+ return each_with_index(&proc) if offset == 0
+
+ each do |prime|
+ yield prime, offset
+ offset += 1
+ end
+ end
# see +Enumerator+#with_object.
def with_object(obj)