Class (GI Struct)

GLib-2.0GLibSequenceAbstract

The GLib.Sequence struct is an opaque data type representing a sequence data type.

Index

Constructors

Properties

$gtype: GType<Sequence>

Methods

  • Calls func for each item in the sequence passing user_data to the function. func must not modify the sequence itself.

    Parameters

    • func: Func

      the function to call for each item in seq

    Returns void

  • Frees the memory allocated for seq. If seq has a data destroy function associated with it, that function is called on all items in seq.

    Returns void

  • Returns the positive length (>= 0) of seq. Note that this method is O(h) where h' is the height of the tree. It is thus more efficient to use g_sequence_is_empty()when comparing the length to zero. @returns the length ofseq`

    Returns number

  • Inserts data into seq using cmp_func to determine the new position. The sequence must already be sorted according to cmp_func; otherwise the new position of data is undefined.

    cmp_func is called with two items of the seq, 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.

    Note that when adding a large amount of data to a GLib.Sequence, it is more efficient to do unsorted insertions and then call g_sequence_sort() or g_sequence_sort_iter().

    Parameters

    • data: any

      the data to insert

    • cmp_func: CompareDataFunc

      the function used to compare items in the sequence

    Returns SequenceIter

    a GLib.SequenceIter pointing to the new item.

  • Returns true if the sequence contains zero items.

    This function is functionally identical to checking the result of g_sequence_get_length() being equal to zero. However this function is implemented in O(1) running time.

    Returns boolean

    true if the sequence is empty, otherwise false.

  • 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 g_sequence_iter_next() and g_sequence_iter_prev() to get others.

    cmp_func is called with two items of the seq, 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.

    Parameters

    • data: any

      data to look up

    • cmp_func: CompareDataFunc

      the function used to compare items in the sequence

    Returns SequenceIter

    an GLib.SequenceIter pointing to the position of the first item found equal to data according to cmp_func and cmp_data, or null if no such item exists

  • Like g_sequence_lookup(), but uses a GLib.SequenceIterCompareFunc instead of a GLib.CompareDataFunc as the compare function.

    iter_cmp is called with two iterators pointing into seq. It should return 0 if the iterators are equal, a negative value if the first iterator comes before the second, and a positive value if the second iterator comes before the first.

    This function will fail if the data contained in the sequence is unsorted.

    Parameters

    Returns SequenceIter

    an GLib.SequenceIter pointing to the position of the first item found equal to data according to iter_cmp and cmp_data, or null if no such item exists

  • Returns an iterator pointing to the position where data would be inserted according to cmp_func and cmp_data.

    cmp_func is called with two items of the seq, 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.

    If you are simply searching for an existing element of the sequence, consider using g_sequence_lookup().

    This function will fail if the data contained in the sequence is unsorted.

    Parameters

    • data: any

      data for the new item

    • cmp_func: CompareDataFunc

      the function used to compare items in the sequence

    Returns SequenceIter

    an GLib.SequenceIter pointing to the position where data would have been inserted according to cmp_func and cmp_data

  • Like g_sequence_search(), but uses a GLib.SequenceIterCompareFunc instead of a GLib.CompareDataFunc as the compare function.

    iter_cmp is called with two iterators pointing into seq. It should return 0 if the iterators are equal, a negative value if the first iterator comes before the second, and a positive value if the second iterator comes before the first.

    If you are simply searching for an existing element of the sequence, consider using g_sequence_lookup_iter().

    This function will fail if the data contained in the sequence is unsorted.

    Parameters

    • data: any

      data for the new item

    • iter_cmp: SequenceIterCompareFunc

      the function used to compare iterators in the sequence

    Returns SequenceIter

    a GLib.SequenceIter pointing to the position in seq where data would have been inserted according to iter_cmp and cmp_data

  • Sorts seq using cmp_func.

    cmp_func is passed two items of seq and should return 0 if they are equal, a negative value if the first comes before the second, and a positive value if the second comes before the first.

    Parameters

    Returns void

  • Removes the item pointed to by iter. It is an error to pass the end iterator to this function.

    If the sequence has a data destroy function associated with it, this function is called on the data for the removed item.

    Returns void

  • Changes the data for the item pointed to by iter to be data. If the sequence has a data destroy function associated with it, that function is called on the existing data that iter pointed to.

    Parameters

    Returns void

  • Moves the data pointed to by iter to a new position as indicated by cmp_func. This function should be called for items in a sequence already sorted according to cmp_func whenever some aspect of an item changes so that cmp_func may return different values for that item.

    cmp_func is called with two items of the seq, 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.

    Parameters

    Returns void