Question about magic enumerators in > 1.8

Hi –

Can someone jog my memory, and/or enlighten me, as to what a case
would be where it’s useful to have:

array.map

return an Enumerator? I can’t seem to come up with an example where:

array.map.anything

is different from

array.anything

Thanks –

David

On Jul 9, 2006, at 9:03 AM, [email protected] wrote:

is different from

array.anything

Thanks –

Well, you can use it to roll the oft-requested map_with_index():

array.each_with_index.map { |obj, i| … }

That’s not a map() example though, so maybe not what you wanted.

James Edward G. II

Hi –

On Sun, 9 Jul 2006, James Edward G. II wrote:

array.each_with_index.map { |obj, i| … }

That’s not a map() example though, so maybe not what you wanted.

Right, it isn’t :slight_smile: I’m still looking for a map example.

David

On Jul 9, 2006, at 10:36 AM, [email protected] wrote:

array.map

http://www.rubypowerandlight.com => Ruby/Rails training & consultancy
http://www.manning.com/black => RUBY FOR RAILS, the Ruby book for
Rails developers
http://dablog.rubypal.com => D[avid ]A[. ]B[lack’s][ Web]log
[email protected] => me

Contrived example: I know a method I’m about to call iterates thru me
with each doing something. It’s the last thing it does and what the
results of the thing it does rather than myself at the end:

some_method(array.map)

Ok so it’s a REALLY contrived example.

“d” == dblack [email protected] writes:

d> return an Enumerator? I can’t seem to come up with an example where:

d> array.map.anything

d> is different from

d> array.anything

moulon% ./ruby -e ‘[12].map.with_index {}’
moulon%

moulon% ./ruby -e ‘[12].with_index {}’
-e:1: undefined method `with_index’ for [12]:Array (NoMethodError)
moulon%

p.s.:
:-))))

Guy Decoux

Hi –

On Mon, 10 Jul 2006, Christian N. wrote:

array.map.anything

is different from

array.anything

names.map { |x| x.size }.max, and you don’t need an immediate array.

That’s not an example of what I’m asking about, though. There’s no
enumerator returned there.

David

[email protected] writes:

is different from

array.anything

names.map { |x| x.size }.max, and you don’t need an immediate array.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs