Apply a mutation function over all elements

class Person
      var age: Int
      def incr_age
      do
              age += 1
      end
end

var ps = [new Persone(1), new Person(2), new Person(3)]
var ages = ps.iterator.for_each(&Person::incr_age).map(&Person::age).to_a
assert ages == [2,3,4]

Property definitions

functional :: iter_extras $ Iterator :: for_each
        # Apply a mutation function over all elements
        #
        # ~~~~nitish
        # class Person
        #       var age: Int
        #       def incr_age
        #       do
        #               age += 1
        #       end
        # end
        #
        # var ps = [new Persone(1), new Person(2), new Person(3)]
        # var ages = ps.iterator.for_each(&Person::incr_age).map(&Person::age).to_a
        # assert ages == [2,3,4]
        # ~~~~
        fun for_each(f: Proc1[E])
        do
                for x in self do
                        f.call(x)
                end
        end
lib/functional/iter_extras.nit:172,9--192,11