Re: [Vala] foreach / Gee.Tree/HashMap



Hello,

thank you for the explanation. Pretty bad pitfall though.

Regards,
  Dennis

Am 21.08.2012 08:41, schrieb Luca Bruno:
On Tue, Aug 21, 2012 at 5:34 AM, Dennis Möhlmann <in dev nyda info
<mailto:in dev nyda info>> wrote:

    Hello,

    I was running into an issue with Gee Maps and was wondering if this is
    intended behaviour. Here's a minimal sample:

    var map = new HashMap<int, string>();
    map[1] = "first";
    map[2] = "second";

    foreach (var value in map) {
        stdout.printf((value ?? "null") + "\n");
    }

 

    [...]

 

    "Gaps" in the map-keys produce similar issues. Looks like a bug to me,
    but I thought I'd ask here first.


That's because HashMap has no iterator() method, then vala uses the
size()/get() iterator mode. It's intended to work like that but
absolutely counter intuitive.

-- 
www.debian.org <http://www.debian.org> - The Universal Operating System



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]