Behdad Esfahbod
c0485e32a3
Use hb_void_t<> the way it's supposed to be used
2019-05-10 21:03:14 -07:00
Behdad Esfahbod
5a171ed3a6
[null] Modernize template work
2019-05-10 20:11:29 -07:00
Behdad Esfahbod
61d150c916
[meta] Add integral_constant, true_t -> true_type, false_t -> false_type
2019-05-10 20:06:31 -07:00
Behdad Esfahbod
38e3a8bd53
[meta] bool_tt -> bool_constant
2019-05-10 20:03:14 -07:00
Ebrahim Byagowi
92588782d7
Remove space between right angle brackets now that we have C++11 ( #1689 )
2019-04-30 13:05:10 -07:00
Behdad Esfahbod
54ece299bc
Use type aliasing for meta-functions, ie. those returning a type
2019-04-16 16:45:53 -04:00
Behdad Esfahbod
155e92f259
Reduce NullPool size
2019-04-16 11:35:09 -04:00
Behdad Esfahbod
4c38a9f601
Remove hb_assign()
...
Not needed anymore. We just use operator= now.
2019-03-29 20:23:07 -07:00
Behdad Esfahbod
b986c6a321
[C++11] Remove IntType::set() in favor of operator=
2019-03-29 20:21:21 -07:00
Behdad Esfahbod
a030ce4ff8
Merge branch 'master' into iter
2019-03-28 21:26:50 -07:00
Behdad Esfahbod
ec2a5dc859
Use class templates for Null objects
...
This allows partial-instantiating custom Null object for template Lookup<T>.
Before, this had to be handcoded per instantiation. Apparently I missed
adding one for AAT::ankr.lookupTable, so it was getting the wrong (generic)
null for Lookup object, which is wrong and unsafe.
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=944346
2019-03-26 16:23:40 -07:00
Behdad Esfahbod
d552b6818c
[meta] Move typename around
...
We'll see if bots like.
2019-01-20 20:12:12 -05:00
Behdad Esfahbod
8570da1d74
[meta] Minor
2019-01-20 20:12:12 -05:00
Behdad Esfahbod
8c6cbbdfa3
[iter/meta] Add hb_is_iterable
2019-01-20 20:12:12 -05:00
Behdad Esfahbod
d25a2f1496
Fix a few warnings
2018-12-23 20:34:24 -05:00
Behdad Esfahbod
5b70074edf
Add hb_assign(obj, value)
2018-12-20 15:38:59 -05:00
Ebrahim Byagowi
e412008599
Remove redundant void from C++ sources ( #1486 )
2018-12-17 13:01:01 -05:00
Ebrahim Byagowi
b2ebaa9afa
Remove redundant 'inline' from methods ( #1483 )
2018-12-16 14:08:10 -05:00
Michiharu Ariza
9ae954f43a
Merge branch 'master' into cff-subset
2018-11-30 15:00:52 -08:00
Behdad Esfahbod
282ce7230b
Fix "typename outside template" issues
...
Nothing an extra template class wouldn't fix...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1419
2018-11-29 12:18:14 -05:00
Michiharu Ariza
32d291ae89
Merge branch 'master' into cff-subset
2018-11-28 16:27:45 -08:00
Behdad Esfahbod
39b9d63b01
Add hb_static_size(T)
2018-11-24 00:25:40 -05:00
Behdad Esfahbod
f99abcc379
Add template-function convenience macros
2018-11-24 00:24:01 -05:00
Behdad Esfahbod
e866910579
Enforce requiring null_size even if min_size is 0
...
This concludes null-size enforcement changes
2018-11-22 18:07:59 -05:00
Behdad Esfahbod
eeed802b1d
Fix spurious gcc warnings
...
../../src/hb-null.hh:53:39: warning: enum constant in boolean context [-Wint-in-bool-context]
2018-11-22 01:53:36 -05:00
Behdad Esfahbod
2737aa81e5
Fix up recent change
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1300
2018-11-22 01:44:27 -05:00
Behdad Esfahbod
f2b91d6510
Use Type::null_size for our structs in Null(), sizeof() for other types
2018-11-22 01:10:22 -05:00
Behdad Esfahbod
8d778877b8
..
2018-11-21 23:46:09 -05:00
Behdad Esfahbod
55c66c7c56
Revert "Declare Null() constexpr"
...
This reverts commit 442a72d95a
.
Doesn't make sense. No idea how my local compilers where happy with it!
2018-11-11 16:09:38 -05:00
Behdad Esfahbod
442a72d95a
Declare Null() constexpr
2018-11-11 15:51:23 -05:00
Michiharu Ariza
43ee0e4d00
Merge branch 'master' into cff-subset
2018-11-06 09:57:17 -08:00
Behdad Esfahbod
0da22fb0ad
[null] Tweak hb_nonnull_ptr_t some more
2018-11-05 13:20:06 -05:00
Michiharu Ariza
1682d1bbec
Merge branch 'master' into cff-subset
2018-11-04 13:25:41 -08:00
Behdad Esfahbod
d6fdae310f
Add operator char * to hb_nonnull_ptr_t
2018-11-03 16:02:03 -04:00
Behdad Esfahbod
7430ff604a
Template casts in hb_nonnull_ptr_t
2018-11-03 15:59:13 -04:00
Behdad Esfahbod
fb0f30f55a
Add hb_nonnull_ptr_t
...
Towards fixing https://github.com/harfbuzz/harfbuzz/issues/1146
2018-11-03 15:41:32 -04:00
Michiharu Ariza
e600e5440b
Merge branch 'master' into cff-subset
2018-11-01 16:13:56 -07:00
Behdad Esfahbod
de96e5c81c
[Crap] Avoid operator=
2018-11-01 18:14:41 -04:00
Michiharu Ariza
e1241636d6
Merge branch 'master' into cff-subset
2018-10-23 11:25:51 -07:00
Behdad Esfahbod
07386ea410
Remove const and references when binding Null()
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1299
Removes anomaly I was seeing in cpal table trying to use implicit Null(NameID).
2018-10-22 21:21:17 -07:00
Michiharu Ariza
857c58279e
Merge branch 'master' into cff-subset
2018-10-22 09:57:20 -07:00
Bruce Mitchener
257d0e5aa3
Fix typos.
2018-10-19 19:24:05 +03:30
Behdad Esfahbod
b3390990f5
Add per-subtable set-digests
...
This speeds up Roboto shaping by ~10%. I was hoping for more.
Still, good defense against lookups with many subtables.
2018-10-10 12:13:25 -04:00
Behdad Esfahbod
78c09bf213
Move subtable array into lookup accel
2018-10-10 11:50:46 -04:00
Michiharu Ariza
d050ab8d3e
Merge branch 'master' into cff-subset
2018-09-17 13:07:29 -07:00
Michiharu Ariza
c0c85b852d
implemented get_glyph_extents with CFF1
...
Implemented path operators in a new struct PathProc hooked up to CSOpSet
Added current point to CSInterpEnv
2018-09-17 11:14:56 -07:00
Behdad Esfahbod
606bf57430
Revert forcing use of single-parameter static_assert()
...
Some clang versions define static_assert as a macro apparently, so we cannot
redefine it...
This reverts commit 94bfea0ce6
.
This reverts commit 4e62627831
.
2018-09-16 19:34:39 +02:00
Behdad Esfahbod
4e62627831
Enforce single-param static_assert() only
...
So we don't accidentally break it again.
2018-09-16 18:09:36 +02:00
Behdad Esfahbod
f1a86e1e6f
Remove unused try
2018-09-16 18:01:32 +02:00
Michiharu Ariza
22b88632d5
Merge branch 'master' into cff-subset
2018-09-06 22:27:44 -07:00