lookup
Description:
Returns an iterator pointing to the position of the first item found equal to data
according to cmp_func
and
cmp_data
.
If more than one item is equal, it is not guaranteed that it is the first which is returned. In that case, you can use next and prev to get others.
cmp_func
is called with two items of the this, and cmp_data
. It should return 0 if
the items are equal, a negative value if the first item comes before the second, and a positive value if the second item comes before the first.
This function will fail if the data contained in the sequence is unsorted.
Example: Lookup:
public static int main (string[] args) {
Sequence<string> seq = new Sequence<string> ();
// sorted data:
seq.append ("1. Lorem");
seq.append ("2. ipsum");
seq.append ("3. dolor");
seq.append ("4. sit");
seq.append ("5. amet");
SequenceIter<string> iter = seq.lookup ("3. dolor", (a, b) => {
return strcmp (a, b);
});
assert (iter != null);
// Output: ``3. dolor``
print ("%s\n", iter.get ());
return 0;
}
valac --pkg glib-2.0 GLib.Sequence.lookup.vala
Parameters:
this |
a Sequence |
data |
data to look up |
cmp_func |
the function used to compare items in the sequence |
cmp_data |
user data passed to |
Returns:
an SequenceIter pointing to the position of the first item found equal to
|