[sv-ec] 5.15 Array manipulation methods - question

From: Bresticker, Shalom <shalom.bresticker_at_.....>
Date: Thu Nov 17 2005 - 06:06:36 PST
Hi,

5.15 ("Array manipulation methods") gives the impression that all these methods relate to 1-dimensional arrays. Or at least, if the array is multi-dimensional, then they relate to it as an array of arrays, since the array type can be anything.

So it makes sense that they return queues of array_type, and the index locator methods return queues of indexes, where each index is of type int.

I understood all that, till I got to 5.15.4 "Iterator index querying". Suddenly I find that the methods seem to iterate over each individual element of a multi-dimensional array, as in the last example:

int mem[9:0][9:0], mem2[9:0][9:0];
int q[$];
...
// find all items in mem that are greater than corresponding item in mem2
q = mem.find( x ) with ( x > mem2[x.index(1)][x.index(2)] );

Now I'm confused about how it works.

For example, what would I get in this example if I used mem.find_index instead of mem.find?

And what is the meaning of the previous code line from the same example:

// find all items equal to their position (index)
q = arr.find with ( item == item.index );

My head hurts...

Shalom Bresticker
Intel Jerusalem LAD DA
+972 2 589-6852
+972 54 721-1033
I don't represent Intel 
Received on Thu Nov 17 06:28:30 2005

This archive was generated by hypermail 2.1.8 : Thu Nov 17 2005 - 06:30:16 PST