Go to the source code of this file.
|
HB_EXTERN hb_set_t * | hb_set_create (void) |
|
HB_EXTERN hb_set_t * | hb_set_get_empty (void) |
|
HB_EXTERN hb_set_t * | hb_set_reference (hb_set_t *set) |
|
HB_EXTERN void | hb_set_destroy (hb_set_t *set) |
|
HB_EXTERN hb_bool_t | hb_set_set_user_data (hb_set_t *set, hb_user_data_key_t *key, void *data, hb_destroy_func_t destroy, hb_bool_t replace) |
|
HB_EXTERN void * | hb_set_get_user_data (hb_set_t *set, hb_user_data_key_t *key) |
|
HB_EXTERN hb_bool_t | hb_set_allocation_successful (const hb_set_t *set) |
|
HB_EXTERN hb_set_t * | hb_set_copy (const hb_set_t *set) |
|
HB_EXTERN void | hb_set_clear (hb_set_t *set) |
|
HB_EXTERN hb_bool_t | hb_set_is_empty (const hb_set_t *set) |
|
HB_EXTERN void | hb_set_invert (hb_set_t *set) |
|
HB_EXTERN hb_bool_t | hb_set_has (const hb_set_t *set, hb_codepoint_t codepoint) |
|
HB_EXTERN void | hb_set_add (hb_set_t *set, hb_codepoint_t codepoint) |
|
HB_EXTERN void | hb_set_add_range (hb_set_t *set, hb_codepoint_t first, hb_codepoint_t last) |
|
HB_EXTERN void | hb_set_add_sorted_array (hb_set_t *set, const hb_codepoint_t *sorted_codepoints, unsigned int num_codepoints) |
|
HB_EXTERN void | hb_set_del (hb_set_t *set, hb_codepoint_t codepoint) |
|
HB_EXTERN void | hb_set_del_range (hb_set_t *set, hb_codepoint_t first, hb_codepoint_t last) |
|
HB_EXTERN hb_bool_t | hb_set_is_equal (const hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN hb_bool_t | hb_set_is_subset (const hb_set_t *set, const hb_set_t *larger_set) |
|
HB_EXTERN void | hb_set_set (hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN void | hb_set_union (hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN void | hb_set_intersect (hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN void | hb_set_subtract (hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN void | hb_set_symmetric_difference (hb_set_t *set, const hb_set_t *other) |
|
HB_EXTERN unsigned int | hb_set_get_population (const hb_set_t *set) |
|
HB_EXTERN hb_codepoint_t | hb_set_get_min (const hb_set_t *set) |
|
HB_EXTERN hb_codepoint_t | hb_set_get_max (const hb_set_t *set) |
|
HB_EXTERN hb_bool_t | hb_set_next (const hb_set_t *set, hb_codepoint_t *codepoint) |
|
HB_EXTERN hb_bool_t | hb_set_previous (const hb_set_t *set, hb_codepoint_t *codepoint) |
|
HB_EXTERN hb_bool_t | hb_set_next_range (const hb_set_t *set, hb_codepoint_t *first, hb_codepoint_t *last) |
|
HB_EXTERN hb_bool_t | hb_set_previous_range (const hb_set_t *set, hb_codepoint_t *first, hb_codepoint_t *last) |
|
HB_EXTERN unsigned int | hb_set_next_many (const hb_set_t *set, hb_codepoint_t codepoint, hb_codepoint_t *out, unsigned int size) |
|
◆ HB_SET_VALUE_INVALID
HB_SET_VALUE_INVALID:
Unset hb_set_t value.
Since: 0.9.21
Definition at line 46 of file hb-set.h.
◆ hb_set_t
hb_set_t:
Data type for holding a set of integers. hb_set_t's are used to gather and contain glyph IDs, Unicode code points, and various other collections of discrete values.
Definition at line 36 of file hb-set.h.
◆ hb_set_add()
hb_set_add: @set: A set @codepoint: The element to add to @set
Adds @codepoint to @set.
Since: 0.9.2
Definition at line 252 of file hb-set.cc.
◆ hb_set_add_range()
hb_set_add_range: @set: A set @first: The first element to add to @set @last: The final element to add to @set
Adds all of the elements from @first to @last (inclusive) to @set.
Since: 0.9.7
Definition at line 294 of file hb-set.cc.
◆ hb_set_add_sorted_array()
hb_set_add_sorted_array: @set: A set @sorted_codepoints: (array length=num_codepoints): Array of codepoints to add @num_codepoints: Length of @sorted_codepoints
Adds @num_codepoints codepoints to a set at once. The codepoints array must be in increasing order, with size at least @num_codepoints.
Since: 4.1.0
Definition at line 272 of file hb-set.cc.
◆ hb_set_allocation_successful()
hb_set_allocation_successful: @set: A set
Tests whether memory allocation for a set was successful.
Return value: true if allocation succeeded, false otherwise
Since: 0.9.2
Definition at line 170 of file hb-set.cc.
◆ hb_set_clear()
hb_set_clear: @set: A set
Clears out the contents of a set.
Since: 0.9.2
Definition at line 202 of file hb-set.cc.
◆ hb_set_copy()
hb_set_copy: @set: A set
Allocate a copy of @set.
Return value: Newly-allocated set.
Since: 2.8.2
Definition at line 186 of file hb-set.cc.
◆ hb_set_create()
SECTION:hb-set @title: hb-set @short_description: Objects representing a set of integers hb.h
Set objects represent a mathematical set of integer values. They are used in non-shaping APIs to query certain sets of characters or glyphs, or other integer values. hb_set_create: (Xconstructor)
Creates a new, initially empty set.
Return value: (transfer full): The new hb_set_t
Since: 0.9.2
Definition at line 52 of file hb-set.cc.
◆ hb_set_del()
hb_set_del: @set: A set @codepoint: Removes @codepoint from @set
Removes @codepoint from @set.
Since: 0.9.2
Definition at line 312 of file hb-set.cc.
◆ hb_set_del_range()
hb_set_del_range: @set: A set @first: The first element to remove from @set @last: The final element to remove from @set
Removes all of the elements from @first to @last (inclusive) from @set.
If @last is HB_SET_VALUE_INVALID, then all values greater than or equal to @first are removed.
Since: 0.9.7
Definition at line 334 of file hb-set.cc.
◆ hb_set_destroy()
hb_set_destroy: (skip) @set: A set
Decreases the reference count on a set. When the reference count reaches zero, the set is destroyed, freeing all memory.
Since: 0.9.2
Definition at line 106 of file hb-set.cc.
◆ hb_set_get_empty()
hb_set_get_empty:
Fetches the singleton empty hb_set_t.
Return value: (transfer full): The empty hb_set_t
Since: 0.9.2
Definition at line 74 of file hb-set.cc.
◆ hb_set_get_max()
hb_set_get_max: @set: A set
Finds the largest element in the set.
Return value: maximum of @set, or HB_SET_VALUE_INVALID if @set is empty.
Since: 0.9.7
Definition at line 523 of file hb-set.cc.
◆ hb_set_get_min()
hb_set_get_min: @set: A set
Finds the smallest element in the set.
Return value: minimum of @set, or HB_SET_VALUE_INVALID if @set is empty.
Since: 0.9.7
Definition at line 507 of file hb-set.cc.
◆ hb_set_get_population()
hb_set_get_population: @set: A set
Returns the number of elements in the set.
Return value: The population of @set
Since: 0.9.7
Definition at line 491 of file hb-set.cc.
◆ hb_set_get_user_data()
hb_set_get_user_data: (skip) @set: A set @key: The user-data key to query
Fetches the user data associated with the specified key, attached to the specified set.
Return value: (transfer none): A pointer to the user data
Since: 0.9.2
Definition at line 152 of file hb-set.cc.
◆ hb_set_has()
hb_set_has: @set: A set @codepoint: The element to query
Tests whether @codepoint belongs to @set.
Return value: true if @codepoint is in @set, false otherwise
Since: 0.9.2
Definition at line 236 of file hb-set.cc.
◆ hb_set_intersect()
hb_set_intersect: @set: A set @other: Another set
Makes @set the intersection of @set and @other.
Since: 0.9.2
Definition at line 423 of file hb-set.cc.
◆ hb_set_invert()
hb_set_invert: @set: A set
Inverts the contents of @set.
Since: 3.0.0
Definition at line 474 of file hb-set.cc.
◆ hb_set_is_empty()
hb_set_is_empty: @set: a set.
Tests whether a set is empty (contains no elements).
Return value: true if @set is empty
Since: 0.9.7
Definition at line 219 of file hb-set.cc.
◆ hb_set_is_equal()
hb_set_is_equal: @set: A set @other: Another set
Tests whether @set and @other are equal (contain the same elements).
Return value: true if the two sets are equal, false otherwise.
Since: 0.9.7
Definition at line 355 of file hb-set.cc.
◆ hb_set_is_subset()
hb_set_is_subset: @set: A set @larger_set: Another set
Tests whether @set is a subset of @larger_set.
Return value: true if the @set is a subset of (or equal to) @larger_set, false otherwise.
Since: 1.8.1
Definition at line 373 of file hb-set.cc.
◆ hb_set_next()
hb_set_next: @set: A set @codepoint: (inout): Input = Code point to query Output = Code point retrieved
Fetches the next element in @set that is greater than current value of @codepoint.
Set @codepoint to HB_SET_VALUE_INVALID to get started.
Return value: true if there was a next value, false otherwise
Since: 0.9.2
Definition at line 543 of file hb-set.cc.
◆ hb_set_next_many()
hb_set_next_many: @set: A set @codepoint: Outputting codepoints starting after this one. Use HB_SET_VALUE_INVALID to get started. @out: (array length=size): An array of codepoints to write to. @size: The maximum number of codepoints to write out.
Finds the next element in @set that is greater than @codepoint. Writes out codepoints to @out, until either the set runs out of elements, or @size codepoints are written, whichever comes first.
Return value: the number of values written.
Since: 4.2.0
Definition at line 635 of file hb-set.cc.
◆ hb_set_next_range()
hb_set_next_range: @set: A set @first: (out): The first code point in the range @last: (inout): Input = The current last code point in the range Output = The last code point in the range
Fetches the next consecutive range of elements in @set that are greater than current value of @last.
Set @last to HB_SET_VALUE_INVALID to get started.
Return value: true if there was a next range, false otherwise
Since: 0.9.7
Definition at line 587 of file hb-set.cc.
◆ hb_set_previous()
hb_set_previous: @set: A set @codepoint: (inout): Input = Code point to query Output = Code point retrieved
Fetches the previous element in @set that is lower than current value of @codepoint.
Set @codepoint to HB_SET_VALUE_INVALID to get started.
Return value: true if there was a previous value, false otherwise
Since: 1.8.0
Definition at line 564 of file hb-set.cc.
◆ hb_set_previous_range()
hb_set_previous_range: @set: A set @first: (inout): Input = The current first code point in the range Output = The first code point in the range @last: (out): The last code point in the range
Fetches the previous consecutive range of elements in @set that are greater than current value of @last.
Set @first to HB_SET_VALUE_INVALID to get started.
Return value: true if there was a previous range, false otherwise
Since: 1.8.0
Definition at line 611 of file hb-set.cc.
◆ hb_set_reference()
hb_set_reference: (skip) @set: A set
Increases the reference count on a set.
Return value: (transfer full): The set
Since: 0.9.2
Definition at line 90 of file hb-set.cc.
◆ hb_set_set()
hb_set_set: @set: A set @other: Another set
Makes the contents of @set equal to the contents of @other.
Since: 0.9.2
Definition at line 389 of file hb-set.cc.
◆ hb_set_set_user_data()
hb_set_set_user_data: (skip) @set: A set @key: The user-data key to set @data: A pointer to the user data to set @destroy: (nullable): A callback to call when @data is not needed anymore @replace: Whether to replace an existing data with the same key
Attaches a user-data key/data pair to the specified set.
Return value: true if success, false otherwise
Since: 0.9.2
Definition at line 130 of file hb-set.cc.
◆ hb_set_subtract()
hb_set_subtract: @set: A set @other: Another set
Subtracts the contents of @other from @set.
Since: 0.9.2
Definition at line 440 of file hb-set.cc.
◆ hb_set_symmetric_difference()
hb_set_symmetric_difference: @set: A set @other: Another set
Makes @set the symmetric difference of @set and @other.
Since: 0.9.2
Definition at line 458 of file hb-set.cc.
◆ hb_set_union()
hb_set_union: @set: A set @other: Another set
Makes @set the union of @set and @other.
Since: 0.9.2
Definition at line 406 of file hb-set.cc.