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 | null

    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 | null

    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