Fyi, PackageInfo (and thus base Pharo currently) defines
Collection>>gather: which has basically this behaviour (minus the nil
check). I had this marked as a method for discussion when going
through the VASt/Pharo collection protocols.
I think #collectAll: is problematic as a selector because "All:"
suggests a collection passed as a parameter.
Another possible pattern would be to model after :flatten in Ruby,
though it operates recursively, so it might not be the best name here.
Maybe #gather: is actually fine.
Julian
2009/12/26 Bart Gauquie <bart.gauquie@gmail.com>:
> _______________________________________________> Dear all,
> Another one was:
> Set>>collectAll: aBlock
> � | newSet |
> � �newSet := Set new: self size.
> � �array do: [:each | each ifNotNil: [newSet addAll: (aBlock value: each)]].
> � �^ newSet
>
> In analogy with addAll: aCollection. If useful, maybe we should provide a
> more general implementation for Collection instead of only Set I needed so
> far.
> Kind Regards,
> Bart
> --
> imagination is more important than knowledge - Albert Einstein
> Logic will get you from A to B. Imagination will take you everywhere -
> Albert Einstein
> Learn from yesterday, live for today, hope for tomorrow. The important thing
> is not to stop questioning. - Albert Einstein
> The true sign of intelligence is not knowledge but imagination. - Albert
> Einstein
> Gravitation is not responsible for people falling in love. - Albert Einstein
>
> Pharo-project mailing list
> Pharo-project@lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project