src/hb-open-type.hh


Log

Author Commit Date CI Message
Behdad Esfahbod b1dc676e 2019-12-10T11:41:24 [algs] Reduce one more bsearch() impl Ouch, there were three more left. Down one. Two to go.
Ebrahim Byagowi 0558413f 2019-10-01T13:49:55 Minor, tweak spaces
Ebrahim Byagowi d512087e 2019-09-14T10:36:29 Rename GlyphID to HBGlyphID Avoid collision with macOS's ATSUnicodeTypes.h GlyphID
Behdad Esfahbod 229ef1d2 2019-09-10T10:31:07 Rename Fixed to HBFixed Fixes(!!) https://github.com/harfbuzz/harfbuzz/issues/1966
Behdad Esfahbod 0e294c45 2019-09-06T16:54:27 Rename VAR to HB_VAR_ARRAY
Behdad Esfahbod dc2c9aa0 2019-08-28T15:05:49 Rename
Behdad Esfahbod 42d887bd 2019-08-28T14:47:14 Beef up HeadlessArrayOf<> Should be merged with ArrayOf... https://github.com/harfbuzz/harfbuzz/issues/1937
Behdad Esfahbod 3ca809e3 2019-08-28T13:49:35 Add ArrayOf::pop()
Behdad Esfahbod 307bd6d7 2019-08-28T13:49:17 Add arithmetic operators to IntType<>
Behdad Esfahbod 062cad5e 2019-08-28T13:33:08 Add ArrayOf::serialize_append
Ebrahim Byagowi a0b4ac4d 2019-08-24T17:57:14 Turn 8 spaces to tab across the project According to the current code style of the project
Ebrahim Byagowi aab8e084 2019-07-26T02:19:22 minor spacing fix (#1869)
Behdad Esfahbod 6492b234 2019-06-17T14:19:13 Minor
Behdad Esfahbod 8938dd23 2019-06-17T14:12:11 Use injected class name
Behdad Esfahbod 1834cf86 2019-05-31T14:39:32 [serialize] Pass offset to serialize_subset()
Behdad Esfahbod 92604416 2019-05-31T14:34:34 [serialize] Pass offset to serialize_copy()
Behdad Esfahbod dfa5e429 2019-05-15T21:18:14 Add back symmetric OffsetTo<>::friend operator+ Finally seems to be working now.
Behdad Esfahbod 203ea58b 2019-05-15T16:14:40 More adjustment to OffsetTo<>::friend opeator+ Let's see if I break any bots. But yeah, it wasn't accepting a non-const pointer. It just happens that we don't use that in the code it seems.
Behdad Esfahbod 763ea422 2019-05-15T01:15:11 Another try
Behdad Esfahbod e1b2edb0 2019-05-15T01:12:04 Completely revert the thing back
Behdad Esfahbod c58eeb5f 2019-05-15T01:10:31 Another try at fix Fails locally. Trying to understand. Sigh
Behdad Esfahbod 004edf3b 2019-05-15T01:02:50 Ugh. How was the Travis bot happy before, but isn't now?! :(
Behdad Esfahbod e01c7b16 2019-05-15T00:52:17 Move OffsetTo operator+ back out of class Apparently there's different overload resolution rules that apply, at least with some (older?) version of gcc. hb-ot-name-table.hh: In member function ‘void OT::name::accelerator_t::init(hb_face_t*)’: hb-ot-name-table.hh:244:62: error: ambiguous overload for ‘operator+’ (operand types are ‘hb_blob_ptr_t<OT::name>’ and ‘OT::NNOffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> > > {aka const OT::OffsetTo<OT::UnsizedArrayOf<OT::IntType<unsigned char, 1u> >, OT::IntType<short unsigned int, 2u>, false>}’) this->pool = (const char *) (const void *) (this->table+this->table->stringOffset); ^ hb-ot-name-table.hh:244:62: note: candidates are: hb-ot-name-table.hh:244:62: note: operator+(const C*, long int) <built-in> hb-ot-name-table.hh:244:62: note: operator+(const char*, long int) <built-in>
Behdad Esfahbod b213042f 2019-05-15T00:50:48 Revert "Revert symmetric OffsetTo overloads" This reverts commit 01912efb74fc554a81c8cfe572145ce45b8fa58b. Actually this didn't break things. Fixing
Behdad Esfahbod 01912efb 2019-05-15T00:42:47 Revert symmetric OffsetTo overloads Reverts 57f65ae9355004044325dd6441cde761bca5e0a3 Caused ambiguous-overload on some gcc...
Behdad Esfahbod 57f65ae9 2019-05-14T22:52:59 Add symmetric friend operator+ for OffsetTo
Behdad Esfahbod 71208e50 2019-05-14T22:51:59 Move OffsetTo<> deref operators in-class as friends
Behdad Esfahbod 9bfe22af 2019-05-10T22:44:19 [sanitize] Fix previous commit
Behdad Esfahbod 4dcf6532 2019-05-10T22:23:24 [sanitize] Simplify
Behdad Esfahbod 23168c39 2019-05-10T22:11:51 [sanitize] Use hb_is_trivially_copyable()
Behdad Esfahbod 707ff5b5 2019-05-10T20:31:20 Minor
Behdad Esfahbod ed972d5d 2019-05-09T16:58:28 [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 e2a51ff7 2019-05-08T16:41:39 Remove unused var
Behdad Esfahbod e8b45c19 2019-05-08T16:37:38 [array] Add .copy()
Behdad Esfahbod 7166bd56 2019-05-08T14:24:57 Minor
Behdad Esfahbod dfc57802 2019-05-07T23:26:09 Fix more double-promotion errors WHy do only some of the clang bots catch this I have no idea :(.
Behdad Esfahbod af571dbf 2019-05-07T21:39:20 [meta] Replace most hb_enable_if with hb_requires They do absolutely same thing. hb_requires is to encode constraints, whereas hb_enable_if is for more conditional enabling.
Behdad Esfahbod 83e3eabd 2019-05-07T20:58:43 Whitespace
Behdad Esfahbod 41248cce 2019-05-07T20:54:31 Remove MIN/MAX in favor of hb_min/hb_max
Behdad Esfahbod 95426ea9 2019-05-07T15:56:51 Add comment
Behdad Esfahbod b10f6593 2019-05-05T09:23:35 [dispatch] Use functionality from previous commit To remove a couple of unwanted wrapper methods
Behdad Esfahbod 8a32c9ee 2019-05-02T16:20:18 [serialize] Misc getting copy() to work
Behdad Esfahbod 998b0b68 2019-05-02T14:39:52 [serializer] Add copy() to (Unsized)ArrayOf
Behdad Esfahbod 88a41472 2019-05-02T14:22:31 [serializer] Accept exact type in serialize_subset/copy()
Behdad Esfahbod 88fdeeec 2019-05-02T14:14:33 [serialize] Take arguments in copy()
Behdad Esfahbod 273ed612 2019-05-02T14:04:51 [serializer] Add serialize_copy()
Ebrahim Byagowi 92588782 2019-04-30T13:05:10 Remove space between right angle brackets now that we have C++11 (#1689)
Behdad Esfahbod c69f0278 2019-04-24T16:31:37 Fix sign-compare error on 32-bit systems
Behdad Esfahbod 915b9ea5 2019-04-24T10:07:19 [serialize] Add c->check_assign() To check for assignment overflows.
Behdad Esfahbod 27377a7e 2019-04-24T09:22:14 Rely on variadic parameter pack more
Behdad Esfahbod 3ad20c38 2019-04-24T09:09:00 [serialize] Fix a few overflow TODO items
Behdad Esfahbod 441cca23 2019-04-23T23:49:21 Use hb_forward() when forwarding parameter pack
Behdad Esfahbod 20f31347 2019-04-23T12:58:52 Use variadic templates in OffsetTo<> and various ArrayOf<>s
Behdad Esfahbod 07776b60 2019-04-15T16:43:34 More tweaks to previous commit Delete assignment operator of OffsetTo<> instead of Offset<>. In simple ArrayOf<>::sanitize() assert that Type has assignment operator. Ideally we should SFINAE this and fallback to calling Type::sanitize() if assignment operator is not available. But we don't have a case of that in the codebase.
Behdad Esfahbod 699de689 2019-04-15T16:00:20 Delete default assignment operator Offset<>
Behdad Esfahbod 95df00ae 2019-04-12T17:50:03 Hide a few static methods Looks like static methods that do not get inlined end up exported. We have a lot more. Need to protect all at some point. Wish there was an easier way, like the visibility flag we pass that automatically hides all inline methods. Was exposed by check-symbols.sh when compiling on OS X 10.14 with: $ make CPPFLAGS=-Oz CXXFLAGS=-flto=thin LDFLAGS=-lc++
Behdad Esfahbod b52c0e54 2019-04-11T11:20:10 Use injected class name to simplify macros
Behdad Esfahbod 824fd342 2019-04-11T11:16:01 Rename a few macros
Behdad Esfahbod aa2293a5 2019-04-02T17:42:10 [serialize] Minor
Behdad Esfahbod e42b82c8 2019-04-02T17:21:54 [serialize] Handle non-nullable offsets
Behdad Esfahbod 7f73c974 2019-04-02T17:12:24 [serialize] Minor
Behdad Esfahbod bfa02bef 2019-04-01T21:36:13 [serialize] Switch to tetris-packing
Behdad Esfahbod 4c38a9f6 2019-03-29T20:23:07 Remove hb_assign() Not needed anymore. We just use operator= now.
Behdad Esfahbod b986c6a3 2019-03-29T20:17:46 [C++11] Remove IntType::set() in favor of operator=
Behdad Esfahbod 489faf82 2019-03-29T20:01:37 [C++11] Use type aliases for template partial instantiations
Behdad Esfahbod 9a5b15dc 2019-03-29T17:57:24 [C++11] Replace BEInt.set() with operator=
Behdad Esfahbod 0aa59b1d 2019-03-29T17:49:55 [C++11] Add operator= to IntType<> Now that we require C++11 we can do this.
Behdad Esfahbod 3f36c89f 2019-03-29T15:22:46 Inline explicit_operator macro Now that we require C++11, no need to macro.
Behdad Esfahbod 090fe56d 2019-01-25T15:34:03 Merge branch 'master' into iter
Behdad Esfahbod 70a52d6b 2019-01-22T12:15:23 Convert all other enum class consts to static constexpr Fixes https://github.com/harfbuzz/harfbuzz/issues/1553
Behdad Esfahbod 5d4b0377 2019-01-22T12:11:24 Convert unsigned enum class consts to static constexpr Part of https://github.com/harfbuzz/harfbuzz/issues/1553
Behdad Esfahbod 7987095e 2019-01-09T01:02:38 [meta] Remove hb_enable_if_t It was only used for C++<11 which does not allow default parameters in function templates. Looks like we cannot support <11 anyway, so, start cleaning up.
Behdad Esfahbod a4ea0d36 2019-01-09T00:32:11 [iter] Change from const_iter_t/iter_t to iter_t/writer_t
Behdad Esfahbod 362d4e7c 2019-01-08T13:41:30 [iter] Implement for OT::ArrayOf / OT::SortedArrayOf
Behdad Esfahbod 2f837a36 2019-01-08T13:05:01 [SortedArrayOf] Fix sub_array() return type
Behdad Esfahbod 445364d8 2019-01-08T12:42:15 [iter] Rename hb_is_[sorted_]iterator() -> hb_is_[sorted_]iterator_of()
Behdad Esfahbod 8237809f 2019-01-07T22:00:45 [serialize] Make SortedArrayOf:;serialize() take sorted-iterator
Behdad Esfahbod 255085bd 2019-01-02T16:14:00 [iter] Const correctness
Behdad Esfahbod 415f3f43 2018-12-31T13:37:13 Add operator= to IntType, commented out https://github.com/harfbuzz/harfbuzz/pull/1510
Behdad Esfahbod a685bfe8 2018-12-30T20:24:21 Separate GlyphID from HBUINT16 For stricter enforcement.
Behdad Esfahbod 851fbb23 2018-12-30T18:45:50 [iter] Port Coverage::serialize to hb_is_iterator
Behdad Esfahbod 06a44e2e 2018-12-30T18:42:14 [iter/meta] Match hb_is_iterator<> using SFINAE By specifying Item type, which is desirable.
Behdad Esfahbod 3d22900f 2018-12-28T20:01:57 [meta] Don't use template default arguments for functions That's a C++11 extension apparently...
Behdad Esfahbod df138da2 2018-12-28T16:29:48 [iter/meta] Implement is_iterator Removes use of auto type deduction again, which was not supported on many bots.
Behdad Esfahbod 442f4a58 2018-12-28T14:34:00 [meta] Move more code here
Behdad Esfahbod 8c6cbbdf 2018-12-28T14:29:09 [iter/meta] Add hb_is_iterable
Behdad Esfahbod 49161d41 2018-12-26T22:50:33 [subset] Take iterator in ArrayOf serialize Still not satisfied with how I can enforce iterators only, but seems to work for now.
Behdad Esfahbod 205d72a1 2019-01-17T18:10:38 Add NNOffsetTo<>
Behdad Esfahbod 474a1205 2018-12-21T18:46:51 [array/vector] Rename len to length
Behdad Esfahbod 879faa2a 2018-12-21T01:57:40 Rename
Behdad Esfahbod bd369773 2018-12-20T23:14:24 Rename
Behdad Esfahbod 5b70074e 2018-12-20T15:38:59 Add hb_assign(obj, value)
Behdad Esfahbod f1e95e40 2018-12-18T16:49:08 [arrays] Remove hb_supplier_t<>
Behdad Esfahbod cf39c242 2018-12-17T22:36:23 [arrays] Rename Supplier to hb_supplier_t
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Ebrahim Byagowi 7ace1007 2018-12-17T20:07:04 Minor, fix two more ArrayOf incorrect operator logic
Behdad Esfahbod a1240383 2018-12-17T10:44:14 [arrays] Minor fix
Behdad Esfahbod 3656f56d 2018-12-16T20:35:11 [arrays] Minor
Ebrahim Byagowi b2ebaa9a 2018-12-16T22:38:10 Remove redundant 'inline' from methods (#1483)
Behdad Esfahbod ce069d19 2018-12-11T23:07:48 Minor