comp.lang.ada
 help / color / mirror / Atom feed
From: ytomino <aghia05@gmail.com>
Subject: Two approaches of iterators for the key-value pairs
Date: Fri, 27 Nov 2015 07:25:57 -0800 (PST)
Date: 2015-11-27T07:25:57-08:00	[thread overview]
Message-ID: <0c524381-442a-49cc-9d72-27a654320153@googlegroups.com> (raw)

Hello, I'm reading AI12-0009-1 "Iterators for Directories and Environment_Variables".
http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ai12s/ai12-0009-1.txt?rev=1.4

And there is interesting difference between the new iterator of Ada.Environment_Variables and the existing iterators.
(The boolean trick of these new iterators is also interesting, but set aside.)

A loop for Ada.Environment_Variables would be like below, according to this AI:

for E *of* Ada.Environment_Variables.All_Variables loop
   -- E is Iterator_Element (Name_Value_Pair_Type)
   Name (E) -- key
   Value (E) -- value
end loop;

On the other hand, as we already know, a loop for Ada.Containers.Hashed_Maps/Ordered_Maps:

for I *in* The_Map_Object.Iterate loop
   -- I is Cursor
   Key (E) -- key
   Element (E), Reference (E).Element.all -- value
end loop;

If you create new iterator for some key-value pairs, which approach do you like?

-- 
Yuta Tomino

             reply	other threads:[~2015-11-27 15:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-27 15:25 ytomino [this message]
2015-11-27 16:30 ` Two approaches of iterators for the key-value pairs Dmitry A. Kazakov
2015-11-27 18:08   ` ytomino
2015-11-27 20:50     ` Dmitry A. Kazakov
2015-11-27 22:52     ` bj.mooremr
2015-11-27 17:00 ` Pascal Obry
2015-11-27 18:25   ` ytomino
2015-11-27 17:43 ` Brad Moore
2015-11-27 19:38   ` ytomino
2015-11-27 19:46     ` ytomino
2015-11-27 23:11     ` Brad Moore
2015-11-28  8:58       ` Simon Wright
2015-11-28 19:54         ` Brad Moore
2015-11-28 23:34           ` Simon Wright
2015-11-29 21:17             ` Bob Duff
2015-11-29 16:17         ` Simon Wright
2015-11-29 17:55       ` ytomino
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox