From: Behdad Esfahbod Date: Sat, 11 May 2019 05:04:40 +0000 (-0700) Subject: [meta] Add hb_is_trivial X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0ff7954f9f09f80654ac91c16712154744a0dd2d;p=platform%2Fupstream%2FlibHarfBuzzSharp.git [meta] Add hb_is_trivial --- diff --git a/src/hb-meta.hh b/src/hb-meta.hh index a1e93d7..df8ebd1 100644 --- a/src/hb-meta.hh +++ b/src/hb-meta.hh @@ -389,5 +389,12 @@ using hb_is_trivially_copyable= hb_bool_constant< >; #define hb_is_trivially_copyable(T) hb_is_trivially_copyable::value +template +using hb_is_trivial= hb_bool_constant< + hb_is_trivially_copyable (T) && + hb_is_trivially_default_constructible (T) +>; +#define hb_is_trivial(T) hb_is_trivial::value + #endif /* HB_META_HH */ diff --git a/src/test-meta.cc b/src/test-meta.cc index f03be30..ffd360b 100644 --- a/src/test-meta.cc +++ b/src/test-meta.cc @@ -119,6 +119,10 @@ main (int argc, char **argv) static_assert (hb_is_trivially_copyable (X), ""); static_assert (hb_is_trivially_copyable (Y), ""); + static_assert (hb_is_trivial (int), ""); + static_assert (hb_is_trivial (X), ""); + static_assert (hb_is_trivial (Y), ""); + /* TODO Add more meaningful tests. */ return 0;