summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-09-13 23:35:09 +0000
committermarcandre <marcandre@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-09-13 23:35:09 +0000
commitb09845fa70a1ddbb62d454e4b385bdcdc2438a31 (patch)
tree02585d299d40901792294d1e9bd3a5cf6c5a2b8e /lib
parent5904f64dbf9b8d78c8431e6ac19663624cbe599e (diff)
* lib/net/http.rb (each_*): return enumerator if no block present. Patch by Arthur Schreiber [ruby-core:18310]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r--lib/net/http.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/net/http.rb b/lib/net/http.rb
index dff0d238dd..512391b19f 100644
--- a/lib/net/http.rb
+++ b/lib/net/http.rb
@@ -1302,6 +1302,7 @@ module Net #:nodoc:
# Iterates for each header names and values.
def each_header #:yield: +key+, +value+
+ block_given? or return enum_for(__method__)
@header.each do |k,va|
yield k, va.join(', ')
end
@@ -1311,13 +1312,15 @@ module Net #:nodoc:
# Iterates for each header names.
def each_name(&block) #:yield: +key+
+ block_given? or return enum_for(__method__)
@header.each_key(&block)
end
alias each_key each_name
# Iterates for each capitalized header names.
- def each_capitalized_name(&block) #:yield: +key+
+ def each_capitalized_name #:yield: +key+
+ block_given? or return enum_for(__method__)
@header.each_key do |k|
yield capitalize(k)
end
@@ -1325,6 +1328,7 @@ module Net #:nodoc:
# Iterates for each header values.
def each_value #:yield: +value+
+ block_given? or return enum_for(__method__)
@header.each_value do |va|
yield va.join(', ')
end
@@ -1347,6 +1351,7 @@ module Net #:nodoc:
# As for #each_header, except the keys are provided in capitalized form.
def each_capitalized
+ block_given? or return enum_for(__method__)
@header.each do |k,v|
yield capitalize(k), v.join(', ')
end