Lines Matching full:set
27 #include "hb-set.hh"
31 * SECTION:hb-set
32 * @title: hb-set
33 * @short_description: Object representing a set of integers
36 * Set objects represent a mathematical set of integer values. They are
37 * used in non-shaping API to query certain set of characters or glyphs,
52 hb_set_t *set; in hb_set_create() local
54 if (!(set = hb_object_create<hb_set_t> ())) in hb_set_create()
57 set->init_shallow (); in hb_set_create()
59 return set; in hb_set_create()
77 * @set: a set.
84 hb_set_reference (hb_set_t *set) in hb_set_reference() argument
86 return hb_object_reference (set); in hb_set_reference()
91 * @set: a set.
96 hb_set_destroy (hb_set_t *set) in hb_set_destroy() argument
98 if (!hb_object_destroy (set)) return; in hb_set_destroy()
100 set->fini_shallow (); in hb_set_destroy()
102 free (set); in hb_set_destroy()
107 * @set: a set.
118 hb_set_set_user_data (hb_set_t *set, in hb_set_set_user_data() argument
124 return hb_object_set_user_data (set, key, data, destroy, replace); in hb_set_set_user_data()
129 * @set: a set.
137 hb_set_get_user_data (hb_set_t *set, in hb_set_get_user_data() argument
140 return hb_object_get_user_data (set, key); in hb_set_get_user_data()
146 * @set: a set.
155 hb_set_allocation_successful (const hb_set_t *set) in hb_set_allocation_successful() argument
157 return set->successful; in hb_set_allocation_successful()
162 * @set: a set.
169 hb_set_clear (hb_set_t *set) in hb_set_clear() argument
171 set->clear (); in hb_set_clear()
176 * @set: a set.
185 hb_set_is_empty (const hb_set_t *set) in hb_set_is_empty() argument
187 return set->is_empty (); in hb_set_is_empty()
192 * @set: a set.
202 hb_set_has (const hb_set_t *set, in hb_set_has() argument
205 return set->has (codepoint); in hb_set_has()
210 * @set: a set.
218 hb_set_add (hb_set_t *set, in hb_set_add() argument
221 set->add (codepoint); in hb_set_add()
226 * @set: a set.
235 hb_set_add_range (hb_set_t *set, in hb_set_add_range() argument
239 set->add_range (first, last); in hb_set_add_range()
244 * @set: a set.
252 hb_set_del (hb_set_t *set, in hb_set_del() argument
255 set->del (codepoint); in hb_set_del()
260 * @set: a set.
269 hb_set_del_range (hb_set_t *set, in hb_set_del_range() argument
273 set->del_range (first, last); in hb_set_del_range()
278 * @set: a set.
279 * @other: other set.
288 hb_set_is_equal (const hb_set_t *set, in hb_set_is_equal() argument
291 return set->is_equal (other); in hb_set_is_equal()
296 * @set: a set.
297 * @larger_set: other set.
301 * Return value: %TRUE if the @set is a subset of (or equal to) @larger_set, %FALSE otherwise.
306 hb_set_is_subset (const hb_set_t *set, in hb_set_is_subset() argument
309 return set->is_subset (larger_set); in hb_set_is_subset()
314 * @set: a set.
322 hb_set_set (hb_set_t *set, in hb_set_set() argument
325 set->set (other); in hb_set_set()
330 * @set: a set.
338 hb_set_union (hb_set_t *set, in hb_set_union() argument
341 set->union_ (other); in hb_set_union()
346 * @set: a set.
354 hb_set_intersect (hb_set_t *set, in hb_set_intersect() argument
357 set->intersect (other); in hb_set_intersect()
362 * @set: a set.
370 hb_set_subtract (hb_set_t *set, in hb_set_subtract() argument
373 set->subtract (other); in hb_set_subtract()
378 * @set: a set.
386 hb_set_symmetric_difference (hb_set_t *set, in hb_set_symmetric_difference() argument
389 set->symmetric_difference (other); in hb_set_symmetric_difference()
394 * @set: a set.
403 hb_set_invert (hb_set_t *set HB_UNUSED) in hb_set_invert()
409 * @set: a set.
411 * Returns the number of numbers in the set.
413 * Return value: set population.
418 hb_set_get_population (const hb_set_t *set) in hb_set_get_population() argument
420 return set->get_population (); in hb_set_get_population()
425 * @set: a set.
427 * Finds the minimum number in the set.
429 * Return value: minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.
434 hb_set_get_min (const hb_set_t *set) in hb_set_get_min() argument
436 return set->get_min (); in hb_set_get_min()
441 * @set: a set.
443 * Finds the maximum number in the set.
445 * Return value: minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.
450 hb_set_get_max (const hb_set_t *set) in hb_set_get_max() argument
452 return set->get_max (); in hb_set_get_max()
457 * @set: a set.
460 * Gets the next number in @set that is greater than current value of @codepoint.
462 * Set @codepoint to %HB_SET_VALUE_INVALID to get started.
469 hb_set_next (const hb_set_t *set, in hb_set_next() argument
472 return set->next (codepoint); in hb_set_next()
477 * @set: a set.
480 * Gets the previous number in @set that is slower than current value of @codepoint.
482 * Set @codepoint to %HB_SET_VALUE_INVALID to get started.
489 hb_set_previous (const hb_set_t *set, in hb_set_previous() argument
492 return set->previous (codepoint); in hb_set_previous()
497 * @set: a set.
501 * Gets the next consecutive range of numbers in @set that
504 * Set @last to %HB_SET_VALUE_INVALID to get started.
511 hb_set_next_range (const hb_set_t *set, in hb_set_next_range() argument
515 return set->next_range (first, last); in hb_set_next_range()
520 * @set: a set.
524 * Gets the previous consecutive range of numbers in @set that
527 * Set @first to %HB_SET_VALUE_INVALID to get started.
534 hb_set_previous_range (const hb_set_t *set, in hb_set_previous_range() argument
538 return set->previous_range (first, last); in hb_set_previous_range()