src/hb-meta.hh


Log

Author Commit Date CI Message
Behdad Esfahbod 1c501066 2022-01-15T13:08:21 [meta] Include <memory>, for addressof Fixes https://github.com/harfbuzz/harfbuzz/issues/3375
Behdad Esfahbod 71e6f742 2022-01-13T16:19:44 [meta] Remove unused hb_ref()
Behdad Esfahbod 8a69e006 2022-01-13T16:17:34 [meta] Use std::addressof() instead of hb_addressof()
Behdad Esfahbod b7b0a15f 2022-01-13T15:33:27 [meta] Remove hb_add_const
Behdad Esfahbod 3b2e6042 2022-01-13T15:32:46 [meta] Use std::is_const instead of hb_is_const
Behdad Esfahbod 909dde9d 2022-01-13T15:30:10 [meta] Use std::is_reference instead of hb_is_reference
Behdad Esfahbod 47afb3ef 2022-01-13T15:26:07 [meta] Replace hb_is_pointer with std::is_pointer
Behdad Esfahbod b8724c60 2021-11-02T00:49:40 [meta] Add in-house impl of hb_is_convertible()
Behdad Esfahbod 7a078c39 2021-11-02T00:44:51 [meta] Use std::conditional instead of hb_conditional()
Behdad Esfahbod 943921cf 2021-11-02T00:26:46 [meta] Use more std type_traits
Behdad Esfahbod 6d555ce8 2021-11-02T00:18:22 [meta] Use std::forward instead of hb_forward()
Behdad Esfahbod 811f80a7 2021-11-02T00:14:34 [algs] Use std::move instead of hb_move()
Behdad Esfahbod 896e0c74 2021-11-02T00:06:30 [meta] Remove unused traits
Behdad Esfahbod be42800f 2021-11-02T00:04:18 [meta] Use std::is_trivially_... instead of internal copies
Behdad Esfahbod 95c888e1 2021-08-05T12:27:02 [meta] Define hb_int_min for pointer types as nullptr
Behdad Esfahbod 407a112e 2021-08-05T12:23:53 [meta] Make hb_is_signed/hb_is_unsigned work on all types They were failing if type was non-scalar, eg. pointer.
Behdad Esfahbod baf2166a 2021-08-05T12:07:25 [meta] Use hb_true_type/hb_false_type more
Behdad Esfahbod 2caae4a5 2020-06-29T01:18:28 m Move class traits
Behdad Esfahbod 017f6b0d 2020-06-29T00:44:41 m Move static_assert_expr<>
Behdad Esfahbod 7ee3194f 2020-06-28T15:41:44 [meta] Remove wrong comment
ariza 168ceeac 2020-02-14T11:56:56 renamed to hb_unrwap_type(); now recursive
ariza 71552ecc 2020-02-13T12:58:22 add hb_get_type
Behdad Esfahbod 2e48fd07 2019-07-02T17:55:58 Sprinkle constexpr around Being conservative. Also not sure it makes any real difference in our codebase.
Behdad Esfahbod 0ff7954f 2019-05-10T22:04:40 [meta] Add hb_is_trivial
Behdad Esfahbod 7162a97b 2019-05-10T22:03:03 [meta] Add hb_is_trivially_copyable()
Behdad Esfahbod f2398f34 2019-05-10T21:59:57 [meta] Add is_trivially_destructible
Behdad Esfahbod 086772e4 2019-05-10T21:49:25 [meta] Add is_destructible
Behdad Esfahbod b1474527 2019-05-10T21:42:59 [met]a Add is_constructible, ...
Behdad Esfahbod 40fb36a3 2019-05-10T21:01:19 [meta] Minor
Behdad Esfahbod f9a96a0a 2019-05-10T20:56:16 [meta] More rewrites
Behdad Esfahbod 5252677e 2019-05-10T20:49:52 [meta] Rewrite hb_int_min/max
Behdad Esfahbod caa3f92e 2019-05-10T20:43:51 [meta] void_tt -> void_t
Behdad Esfahbod 7df3ecfb 2019-05-10T20:43:26 [meta] hb_void_t -> hb_empty_t
Behdad Esfahbod 149c3db8 2019-05-10T20:34:52 [meta] Minor
Behdad Esfahbod 707ff5b5 2019-05-10T20:31:20 Minor
Behdad Esfahbod ce300f4f 2019-05-10T20:26:29 [meta] Rewrite is_signed, add is_unsigned
Behdad Esfahbod e939d88b 2019-05-10T20:20:51 [meta] Rewrite is_integral / is_floating_point, add is_arithmetic
Behdad Esfahbod c3a456a2 2019-05-10T20:17:30 [meta] Rewrite is_cr_convertible
Behdad Esfahbod b4ad6af9 2019-05-10T20:15:03 [meta] Rewrite is_base_of
Behdad Esfahbod 61d150c9 2019-05-10T20:06:31 [meta] Add integral_constant, true_t -> true_type, false_t -> false_type
Behdad Esfahbod 38e3a8bd 2019-05-10T20:03:14 [meta] bool_tt -> bool_constant
Behdad Esfahbod 3919ca41 2019-05-10T19:56:36 [meta] Add is_floating_point
Behdad Esfahbod 25bb7e00 2019-05-10T19:49:26 [meta] Add is_signed for floating point types
Behdad Esfahbod e0315b4a 2019-05-10T19:48:02 [meta] is_integer -> is_integral
Behdad Esfahbod 9574de7a 2019-05-10T19:29:32 [meta] Add add_const, add_pointer, add_lvalue_reference, add_rvalue_reference
Behdad Esfahbod 30e4ae6b 2019-05-10T11:26:39 [meta] Add hb_is_base_of
Behdad Esfahbod 42901d7a 2019-05-09T16:22:08 Minor
Behdad Esfahbod 69d9114b 2019-05-09T15:24:14 [meta] Rewrite hb_is_cr_converitble
Behdad Esfahbod ceda1f03 2019-05-09T15:19:42 Fix compile NameRecord is not copy-constructible, so should be iterator of const-reference.
Behdad Esfahbod 3686c3b6 2019-05-09T15:09:07 Adjust is_cr_convertible If To is const& then From doesn't need to be &.
Behdad Esfahbod 726002a6 2019-05-09T14:53:02 [iter] Make hb_is_iterator_of() check is_convertible Instead of is_cr_convertible.
Behdad Esfahbod 70a49f2e 2019-05-09T14:35:15 [meta] Add hb_conditional<> and hb_is_convertible()
Behdad Esfahbod 05867d9f 2019-05-09T11:00:43 [meta] Add hb_int_max()
Behdad Esfahbod 4c94bc63 2019-05-08T15:57:33 Move hb_invoke() back to hb-algs.hh
Behdad Esfahbod a17f0fa3 2019-05-08T14:44:11 [meta] Capture rvalue-references in is_reference / remove_reference
Behdad Esfahbod e8bd5fc3 2019-05-07T22:29:40 [meta] Move hb_invoke from algs to meta
Behdad Esfahbod 035b818e 2019-05-07T17:21:18 [meta] Fix addressof()
Behdad Esfahbod 7654ebe3 2019-05-07T16:53:03 Whitespace
Behdad Esfahbod 7c037bd2 2019-05-07T13:37:43 [name] Clean up some more
Behdad Esfahbod fa2d9716 2019-05-07T00:34:50 Remove use of deprecated implicit copy/move assignment operators By removing custom copy constructor.
Behdad Esfahbod 8903040f 2019-05-07T00:13:11 Actually make it work
Behdad Esfahbod 03a68165 2019-05-07T00:03:35 [meta] Add hb_reference_wrapper<> Functionality kinda superset of std:: counterpart.
Behdad Esfahbod 0bf86d9c 2019-05-06T23:39:26 Whitespace
Behdad Esfahbod 72eb91de 2019-05-06T23:39:13 Add hb_ref() Unused.
Behdad Esfahbod 240f57e5 2019-05-06T23:17:39 Rename hb_deref_pointer() to hb_deref()
Behdad Esfahbod 750b65e9 2019-04-26T17:14:25 [meta] Add hb_type_identity<> To block template argument deduction.
Behdad Esfahbod 3a7f5bdd 2019-04-26T14:40:01 Rewrite hb_is_signed()
Behdad Esfahbod 8ecae793 2019-04-26T12:57:56 [meta] Add hb_is_cr_convertible_to()
Behdad Esfahbod 52bb0346 2019-04-26T12:52:28 [meta] Add hb_decay<>
Behdad Esfahbod 22da1231 2019-04-24T10:53:16 [map] Fix TODO
Behdad Esfahbod c67a0d58 2019-04-17T10:20:02 Add HB_RETURN
Behdad Esfahbod 5b33427f 2019-04-16T18:28:17 Rename HB_AUTO_RETURN_EXPR to HB_AUTO_RETURN
Behdad Esfahbod fe30fcd2 2019-04-16T17:34:06 Use hb_deref_pointer() to reduce number of overloads
Behdad Esfahbod 54ece299 2019-04-16T16:45:53 Use type aliasing for meta-functions, ie. those returning a type
Behdad Esfahbod a3fcb9a3 2019-04-16T10:45:20 [meta] Add HB_AUTO_RETURN_EXPR, HB_VOID_RETURN_EXPR, hb_priority, hb_has(), hb_get() The first three based on range-v3.
Behdad Esfahbod ff68be31 2019-04-16T09:59:08 Add hb_void_tt<> ala std::void_t
Behdad Esfahbod 02d864aa 2019-04-15T15:39:03 Add HB_FUNCOBJ() Fixes https://github.com/harfbuzz/harfbuzz/issues/1651
Behdad Esfahbod caa20e4e 2019-04-12T17:59:18 Hide a few more symbols Exposed by: $ make CPPFLAGS=-O0
Behdad Esfahbod 2778df79 2019-04-03T14:15:01 [meta] Add hb_is_same()
Behdad Esfahbod 7c9ceabc 2019-03-30T18:19:36 [meta] Add hb_move and hb_forward ala std::
Behdad Esfahbod ef33b5d1 2019-03-30T14:39:21 [map] Deref pointers before equality check
Behdad Esfahbod 4b7f4dbc 2019-03-30T13:48:32 Add hb_deref_pointer()
Behdad Esfahbod 343e6063 2019-03-28T21:44:12 Add hb_is_integer(T)
Behdad Esfahbod 7d2376de 2019-02-13T22:08:54 Merge branch 'master' into iter
Behdad Esfahbod e75b2203 2019-01-28T21:26:23 Move hb_addressof() to hb-meta.hh
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 a6c013b1 2019-01-08T14:27:51 [meta] Add hb_declval() macro
Behdad Esfahbod 8414f167 2019-01-07T19:41:52 [meta] Rename
Behdad Esfahbod 815cde9f 2019-01-07T18:33:04 [iter] Use is_sorted_iterator
Behdad Esfahbod d552b681 2018-12-30T18:54:07 [meta] Move typename around We'll see if bots like.
Behdad Esfahbod f64ea8fc 2018-12-30T18:49:34 [meta] Move code around
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 b89d20dd 2018-12-28T16:41:04 [meta] Fix unused-function-template warning
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 e32bf397 2018-12-27T17:38:26 [meta] Add enable_if
Behdad Esfahbod e76a3cae 2018-12-27T17:23:12 Add hb-meta.hh for meta-programming