mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
Upgrade to harfbuzz 9.0.0
This commit is contained in:
parent
5b30f2571e
commit
18fa0bfa15
117 changed files with 8186 additions and 2535 deletions
|
|
@ -82,7 +82,9 @@ struct hb_set_digest_bits_pattern_t
|
|||
|
||||
void init () { mask = 0; }
|
||||
|
||||
void add (const hb_set_digest_bits_pattern_t &o) { mask |= o.mask; }
|
||||
static hb_set_digest_bits_pattern_t full () { hb_set_digest_bits_pattern_t d; d.mask = (mask_t) -1; return d; }
|
||||
|
||||
void union_ (const hb_set_digest_bits_pattern_t &o) { mask |= o.mask; }
|
||||
|
||||
void add (hb_codepoint_t g) { mask |= mask_for (g); }
|
||||
|
||||
|
|
@ -129,11 +131,14 @@ struct hb_set_digest_bits_pattern_t
|
|||
bool may_have (hb_codepoint_t g) const
|
||||
{ return mask & mask_for (g); }
|
||||
|
||||
bool operator [] (hb_codepoint_t g) const
|
||||
{ return may_have (g); }
|
||||
|
||||
private:
|
||||
|
||||
static mask_t mask_for (hb_codepoint_t g)
|
||||
{ return ((mask_t) 1) << ((g >> shift) & (mask_bits - 1)); }
|
||||
mask_t mask;
|
||||
mask_t mask = 0;
|
||||
};
|
||||
|
||||
template <typename head_t, typename tail_t>
|
||||
|
|
@ -145,10 +150,12 @@ struct hb_set_digest_combiner_t
|
|||
tail.init ();
|
||||
}
|
||||
|
||||
void add (const hb_set_digest_combiner_t &o)
|
||||
static hb_set_digest_combiner_t full () { hb_set_digest_combiner_t d; d.head = head_t::full(); d.tail = tail_t::full (); return d; }
|
||||
|
||||
void union_ (const hb_set_digest_combiner_t &o)
|
||||
{
|
||||
head.add (o.head);
|
||||
tail.add (o.tail);
|
||||
head.union_ (o.head);
|
||||
tail.union_(o.tail);
|
||||
}
|
||||
|
||||
void add (hb_codepoint_t g)
|
||||
|
|
@ -188,6 +195,9 @@ struct hb_set_digest_combiner_t
|
|||
return head.may_have (g) && tail.may_have (g);
|
||||
}
|
||||
|
||||
bool operator [] (hb_codepoint_t g) const
|
||||
{ return may_have (g); }
|
||||
|
||||
private:
|
||||
head_t head;
|
||||
tail_t tail;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue