Behdad Esfahbod [Sat, 11 May 2019 08:14:04 +0000 (01:14 -0700)]
[config] Comment
Behdad Esfahbod [Sat, 11 May 2019 08:08:51 +0000 (01:08 -0700)]
[config] Enable HB_NO_NAME_TABLE_AAT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:53:52 +0000 (00:53 -0700)]
[config] Add HB_NO_COLOR to HB_LEAN
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:47:20 +0000 (00:47 -0700)]
[config Add HB_NO_OT_SHAPE_COMPLEX_VOWEL_CONSTRAINTS to LEAN
Already I don't like the inflexibility of this approach :(.
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:44:22 +0000 (00:44 -0700)]
[config] Disbale getenv() and atexit() if HB_LEAN
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:37:01 +0000 (00:37 -0700)]
[config] Make HB_DISABLE_DEPRECATED actually compile
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:19:03 +0000 (00:19 -0700)]
[config] Add HB_NO_OT_LAYOUT_UNUSED
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:16:18 +0000 (00:16 -0700)]
[config] Adjust
Behdad Esfahbod [Sat, 11 May 2019 07:13:35 +0000 (00:13 -0700)]
[config] Add HB_LEAN
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 07:06:57 +0000 (00:06 -0700)]
[config] Fix tests
Behdad Esfahbod [Sat, 11 May 2019 07:04:59 +0000 (00:04 -0700)]
[config] Flesh out more
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 06:55:22 +0000 (23:55 -0700)]
[config] Add some
Behdad Esfahbod [Sat, 11 May 2019 06:53:38 +0000 (23:53 -0700)]
Add hb-config.hh
Behdad Esfahbod [Sat, 11 May 2019 06:46:22 +0000 (23:46 -0700)]
[subset] More HB_NO_SUBSET_LAYOUT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 06:39:53 +0000 (23:39 -0700)]
[cff] Prune more code if HB_NO_OT_FONT_CFF
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 06:36:42 +0000 (23:36 -0700)]
[subset] Add HB_NO_SUBSET_CFF
Doesn't fully prune all the relevant code. To be fixed later.
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 06:31:05 +0000 (23:31 -0700)]
Add HB_NO_AAT
Part of https://github.com/harfbuzz/harfbuzz/issues/1652
Behdad Esfahbod [Sat, 11 May 2019 06:17:15 +0000 (23:17 -0700)]
[cff] Minor
Behdad Esfahbod [Sat, 11 May 2019 06:15:58 +0000 (23:15 -0700)]
Minor
Behdad Esfahbod [Sat, 11 May 2019 05:44:19 +0000 (22:44 -0700)]
[sanitize] Fix previous commit
Behdad Esfahbod [Sat, 11 May 2019 05:23:24 +0000 (22:23 -0700)]
[sanitize] Simplify
Behdad Esfahbod [Sat, 11 May 2019 05:11:51 +0000 (22:11 -0700)]
[sanitize] Use hb_is_trivially_copyable()
Behdad Esfahbod [Sat, 11 May 2019 05:04:40 +0000 (22:04 -0700)]
[meta] Add hb_is_trivial
Behdad Esfahbod [Sat, 11 May 2019 05:03:03 +0000 (22:03 -0700)]
[meta] Add hb_is_trivially_copyable()
Behdad Esfahbod [Sat, 11 May 2019 04:59:57 +0000 (21:59 -0700)]
[meta] Add is_trivially_destructible
Behdad Esfahbod [Sat, 11 May 2019 04:50:15 +0000 (21:50 -0700)]
Remove accidentally included include
Behdad Esfahbod [Sat, 11 May 2019 04:49:25 +0000 (21:49 -0700)]
[meta] Add is_destructible
Behdad Esfahbod [Sat, 11 May 2019 04:42:59 +0000 (21:42 -0700)]
[met]a Add is_constructible, ...
Behdad Esfahbod [Sat, 11 May 2019 04:25:07 +0000 (21:25 -0700)]
[iter] Adjust source_of/sink_of
Behdad Esfahbod [Sat, 11 May 2019 04:03:14 +0000 (21:03 -0700)]
Use hb_void_t<> the way it's supposed to be used
Behdad Esfahbod [Sat, 11 May 2019 04:01:19 +0000 (21:01 -0700)]
[meta] Minor
Behdad Esfahbod [Sat, 11 May 2019 03:56:16 +0000 (20:56 -0700)]
[meta] More rewrites
Behdad Esfahbod [Sat, 11 May 2019 03:49:52 +0000 (20:49 -0700)]
[meta] Rewrite hb_int_min/max
Behdad Esfahbod [Sat, 11 May 2019 03:43:51 +0000 (20:43 -0700)]
[meta] void_tt -> void_t
Behdad Esfahbod [Sat, 11 May 2019 03:43:26 +0000 (20:43 -0700)]
[meta] hb_void_t -> hb_empty_t
Behdad Esfahbod [Sat, 11 May 2019 03:34:52 +0000 (20:34 -0700)]
[meta] Minor
Behdad Esfahbod [Sat, 11 May 2019 03:31:20 +0000 (20:31 -0700)]
Minor
Behdad Esfahbod [Sat, 11 May 2019 03:26:29 +0000 (20:26 -0700)]
[meta] Rewrite is_signed, add is_unsigned
Behdad Esfahbod [Sat, 11 May 2019 03:20:51 +0000 (20:20 -0700)]
[meta] Rewrite is_integral / is_floating_point, add is_arithmetic
Behdad Esfahbod [Sat, 11 May 2019 03:17:30 +0000 (20:17 -0700)]
[meta] Rewrite is_cr_convertible
Behdad Esfahbod [Sat, 11 May 2019 03:15:03 +0000 (20:15 -0700)]
[meta] Rewrite is_base_of
Behdad Esfahbod [Sat, 11 May 2019 03:11:29 +0000 (20:11 -0700)]
[null] Modernize template work
Behdad Esfahbod [Sat, 11 May 2019 03:06:31 +0000 (20:06 -0700)]
[meta] Add integral_constant, true_t -> true_type, false_t -> false_type
Behdad Esfahbod [Sat, 11 May 2019 03:03:14 +0000 (20:03 -0700)]
[meta] bool_tt -> bool_constant
Behdad Esfahbod [Sat, 11 May 2019 02:56:36 +0000 (19:56 -0700)]
[meta] Add is_floating_point
Behdad Esfahbod [Sat, 11 May 2019 02:49:26 +0000 (19:49 -0700)]
[meta] Add is_signed for floating point types
Behdad Esfahbod [Sat, 11 May 2019 02:48:02 +0000 (19:48 -0700)]
[meta] is_integer -> is_integral
Behdad Esfahbod [Sat, 11 May 2019 02:29:32 +0000 (19:29 -0700)]
[meta] Add add_const, add_pointer, add_lvalue_reference, add_rvalue_reference
Behdad Esfahbod [Sat, 11 May 2019 01:40:29 +0000 (18:40 -0700)]
[vector] Simplify arrayZ
Was turned into function when we had static ones and wanted to be
move-safe... Not the case anymore.
Behdad Esfahbod [Fri, 10 May 2019 23:35:31 +0000 (16:35 -0700)]
[subset] Use more auto typing
Behdad Esfahbod [Fri, 10 May 2019 23:26:19 +0000 (16:26 -0700)]
Minor
Behdad Esfahbod [Fri, 10 May 2019 23:21:03 +0000 (16:21 -0700)]
[serialize] More rewrite
Behdad Esfahbod [Fri, 10 May 2019 23:07:51 +0000 (16:07 -0700)]
[serialize] Fix a TODO
rsheeter [Fri, 10 May 2019 23:52:43 +0000 (16:52 -0700)]
Update TESTING.md
Behdad Esfahbod [Fri, 10 May 2019 23:01:39 +0000 (16:01 -0700)]
Fix sanitize fail of extension sublookups
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=960331
Behdad Esfahbod [Fri, 10 May 2019 20:56:50 +0000 (13:56 -0700)]
Minor
Behdad Esfahbod [Fri, 10 May 2019 20:53:15 +0000 (13:53 -0700)]
Minor
Behdad Esfahbod [Fri, 10 May 2019 20:51:12 +0000 (13:51 -0700)]
Minor again
Behdad Esfahbod [Fri, 10 May 2019 20:43:29 +0000 (13:43 -0700)]
Minor
Behdad Esfahbod [Fri, 10 May 2019 20:17:41 +0000 (13:17 -0700)]
[gsubgpos] Minor
Behdad Esfahbod [Fri, 10 May 2019 18:53:02 +0000 (11:53 -0700)]
Generate tarball in .xz instead of .bz2
Fixes https://github.com/harfbuzz/harfbuzz/issues/1662
Behdad Esfahbod [Fri, 10 May 2019 18:32:59 +0000 (11:32 -0700)]
Fix bot
Any way to catch these?
Behdad Esfahbod [Fri, 10 May 2019 18:26:39 +0000 (11:26 -0700)]
[meta] Add hb_is_base_of
Behdad Esfahbod [Fri, 10 May 2019 18:18:52 +0000 (11:18 -0700)]
[iter] Adjust is_source_of / is_sink_of
There are two cases that we accept. Encode both.
rsheeter [Fri, 10 May 2019 03:06:29 +0000 (20:06 -0700)]
Update TESTING.md
Behdad Esfahbod [Thu, 9 May 2019 23:58:28 +0000 (16:58 -0700)]
[iter] Rewrite test functions
Notably, add hb_is_source_of(,) and hb_is_sink_of(,) to replace most
uses of hb_is_iterator_of(,).
Behdad Esfahbod [Thu, 9 May 2019 23:22:08 +0000 (16:22 -0700)]
Minor
Behdad Esfahbod [Thu, 9 May 2019 23:08:10 +0000 (16:08 -0700)]
Whitespace
Behdad Esfahbod [Thu, 9 May 2019 22:39:32 +0000 (15:39 -0700)]
Fix bot
Behdad Esfahbod [Thu, 9 May 2019 22:31:24 +0000 (15:31 -0700)]
[algs] Implement implicit casting between compatible pair types
Behdad Esfahbod [Thu, 9 May 2019 22:24:14 +0000 (15:24 -0700)]
[meta] Rewrite hb_is_cr_converitble
Behdad Esfahbod [Thu, 9 May 2019 22:19:42 +0000 (15:19 -0700)]
Fix compile
NameRecord is not copy-constructible, so should be iterator of
const-reference.
Behdad Esfahbod [Thu, 9 May 2019 22:09:07 +0000 (15:09 -0700)]
Adjust is_cr_convertible
If To is const& then From doesn't need to be &.
Behdad Esfahbod [Thu, 9 May 2019 21:53:02 +0000 (14:53 -0700)]
[iter] Make hb_is_iterator_of() check is_convertible
Instead of is_cr_convertible.
Behdad Esfahbod [Thu, 9 May 2019 21:35:15 +0000 (14:35 -0700)]
[meta] Add hb_conditional<> and hb_is_convertible()
Garret Rieger [Wed, 8 May 2019 23:33:03 +0000 (16:33 -0700)]
[subset] Switch building of glyph maps in subset plan to use iterators.
Garret Rieger [Wed, 8 May 2019 23:31:52 +0000 (16:31 -0700)]
Add sink support for hb_hashmap_t and a reverse call to hb_pair_t.
Behdad Esfahbod [Thu, 9 May 2019 20:15:36 +0000 (13:15 -0700)]
Add hb_pair_t(,) macro as alternative to hb_pair_t<,>
Just so it's easier to use it in other macros.
Behdad Esfahbod [Thu, 9 May 2019 19:43:57 +0000 (12:43 -0700)]
Add hb_lidentity(), and rename hb_rvalue() to hb_ridentity()
Behdad Esfahbod [Thu, 9 May 2019 19:14:36 +0000 (12:14 -0700)]
[hdmx] Adjust to hb_iota() behavior change
Use hb_range() instead.
Behdad Esfahbod [Thu, 9 May 2019 19:07:45 +0000 (12:07 -0700)]
[enumerate] Fix hb_enumerate() len for step=0
Behdad Esfahbod [Thu, 9 May 2019 18:30:31 +0000 (11:30 -0700)]
[iter] Fix hb_zip() end condition
We should compare-equal to end if either iterator's end reaches,
not if both reach at the same time. Fixes infinite-loop in test
which was happening after hb_enumerate() switched to using hb_zip().
Behdad Esfahbod [Thu, 9 May 2019 18:30:27 +0000 (11:30 -0700)]
[iter] Minor
Behdad Esfahbod [Thu, 9 May 2019 18:25:02 +0000 (11:25 -0700)]
[iter] Minor
Behdad Esfahbod [Thu, 9 May 2019 18:23:41 +0000 (11:23 -0700)]
[test-iter] Don't walk past end
That's not legal.
Behdad Esfahbod [Thu, 9 May 2019 18:20:41 +0000 (11:20 -0700)]
[iter] Allow negative step in hb_iota()
Behdad Esfahbod [Thu, 9 May 2019 18:14:06 +0000 (11:14 -0700)]
[iter] Minor
Behdad Esfahbod [Thu, 9 May 2019 18:10:31 +0000 (11:10 -0700)]
[iter] Bug fix
Behdad Esfahbod [Thu, 9 May 2019 18:08:25 +0000 (11:08 -0700)]
[iter] Fix
Behdad Esfahbod [Thu, 9 May 2019 18:07:38 +0000 (11:07 -0700)]
[iter] Take start value in hb_enumerate()
Also rewrite it via composition.
Behdad Esfahbod [Thu, 9 May 2019 18:02:56 +0000 (11:02 -0700)]
[iter] Add hb_range()
hb_range() is like Python range. hb_iota() has slightly different API.
Ie. it takes a start, instead of end.
Behdad Esfahbod [Thu, 9 May 2019 18:00:43 +0000 (11:00 -0700)]
[meta] Add hb_int_max()
Behdad Esfahbod [Thu, 9 May 2019 17:46:49 +0000 (10:46 -0700)]
[iota] end -> end_ to not shadow
n8willis [Thu, 9 May 2019 13:39:05 +0000 (14:39 +0100)]
Merge pull request #1680 from n8willis/usermanual-obj
Usermanual: object-model chapter
Behdad Esfahbod [Thu, 9 May 2019 04:14:01 +0000 (21:14 -0700)]
Remove unnecessary template keyword
Should fix MSVC.
Behdad Esfahbod [Wed, 8 May 2019 23:41:39 +0000 (16:41 -0700)]
Remove unused var
Behdad Esfahbod [Wed, 8 May 2019 23:37:38 +0000 (16:37 -0700)]
[array] Add .copy()
Behdad Esfahbod [Wed, 8 May 2019 23:16:43 +0000 (16:16 -0700)]
Fix msan issue
hb_identity returns rvalue-reference if input is rvalue. That, can leak
the reference and cause in bad access to temporaries after they are
destructed. This is unfortunately unfixable given the desired
transparency of hb_identity :(. Just don't use it with hb_map().
Behdad Esfahbod [Wed, 8 May 2019 22:57:33 +0000 (15:57 -0700)]
Move hb_invoke() back to hb-algs.hh
Behdad Esfahbod [Wed, 8 May 2019 22:46:51 +0000 (15:46 -0700)]
[hdmx] Touch up