};
struct
{
- template <typename Pred = decltype ((hb_bool)),
+ template <typename Pred = decltype ((hb_identity)),
typename Proj = decltype ((hb_identity))>
hb_filter_iter_factory_t<Pred, Proj>
- operator () (Pred&& p = hb_bool, Proj&& f = hb_identity) const
+ operator () (Pred&& p = hb_identity, Proj&& f = hb_identity) const
{ return hb_filter_iter_factory_t<Pred, Proj> (p, f); }
}
HB_FUNCOBJ (hb_filter);
struct
{
template <typename Iterable,
- typename Pred = decltype ((hb_bool)),
+ typename Pred = decltype ((hb_identity)),
typename Proj = decltype ((hb_identity)),
hb_requires (hb_is_iterable (Iterable))>
bool operator () (Iterable&& c,
- Pred&& p = hb_bool,
+ Pred&& p = hb_identity,
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)
struct
{
template <typename Iterable,
- typename Pred = decltype ((hb_bool)),
+ typename Pred = decltype ((hb_identity)),
typename Proj = decltype ((hb_identity)),
hb_requires (hb_is_iterable (Iterable))>
bool operator () (Iterable&& c,
- Pred&& p = hb_bool,
+ Pred&& p = hb_identity,
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)
struct
{
template <typename Iterable,
- typename Pred = decltype ((hb_bool)),
+ typename Pred = decltype ((hb_identity)),
typename Proj = decltype ((hb_identity)),
hb_requires (hb_is_iterable (Iterable))>
bool operator () (Iterable&& c,
- Pred&& p = hb_bool,
+ Pred&& p = hb_identity,
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)