[meta] Remove _ft struct names

Using decltype() instead.
This commit is contained in:
Behdad Esfahbod 2019-01-28 21:20:12 -05:00
parent 9103bd056f
commit 71157a4520
2 changed files with 5 additions and 5 deletions

View File

@ -31,13 +31,13 @@
#include "hb-null.hh"
static const struct hb_identity_ft
static const struct
{
template <typename T> T
operator () (const T& v) const { return v; }
} hb_identity HB_UNUSED;
static const struct hb_bool_ft
static const struct
{
template <typename T> bool
operator () (const T& v) const { return bool (v); }
@ -61,13 +61,13 @@ struct hb_pair_t
template <typename T1, typename T2> static inline hb_pair_t<T1, T2>
hb_pair (T1 a, T2 b) { return hb_pair_t<T1, T2> (a, b); }
static const struct hb_first_ft
static const struct
{
template <typename Pair> decltype (hb_declval (Pair).first)
operator () (const Pair& pair) const { return pair.first; }
} hb_first HB_UNUSED;
static const struct hb_second_ft
static const struct
{
template <typename Pair> decltype (hb_declval (Pair).second)
operator () (const Pair& pair) const { return pair.second; }

View File

@ -301,7 +301,7 @@ struct hb_filter_iter_factory_t
Pred p;
Proj f;
};
template <typename Pred = const hb_bool_ft&, typename Proj = const hb_identity_ft&>
template <typename Pred = decltype ((hb_bool)), typename Proj = decltype ((hb_identity))>
inline hb_filter_iter_factory_t<Pred, Proj>
hb_filter (Pred&& p = hb_bool, Proj&& f = hb_identity)
{ return hb_filter_iter_factory_t<Pred, Proj> (p, f); }