Add hb_match
This commit is contained in:
parent
26adefd9ea
commit
4a101d8ffc
|
@ -75,7 +75,7 @@ struct
|
||||||
|
|
||||||
template <typename Pred, typename Val> auto
|
template <typename Pred, typename Val> auto
|
||||||
impl (Pred&& p, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
|
impl (Pred&& p, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
|
||||||
(hb_deref (hb_forward<Pred> (p)).has (v))
|
(hb_deref (hb_forward<Pred> (p)).has (hb_forward<Val> (v)))
|
||||||
|
|
||||||
template <typename Pred, typename Val> auto
|
template <typename Pred, typename Val> auto
|
||||||
impl (Pred&& p, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
|
impl (Pred&& p, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
|
||||||
|
@ -95,6 +95,34 @@ struct
|
||||||
}
|
}
|
||||||
HB_FUNCOBJ (hb_has);
|
HB_FUNCOBJ (hb_has);
|
||||||
|
|
||||||
|
struct
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
|
||||||
|
template <typename Pred, typename Val> auto
|
||||||
|
impl (Pred&& p, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
|
||||||
|
(
|
||||||
|
hb_has (hb_forward<Pred> (p),
|
||||||
|
hb_forward<Val> (v))
|
||||||
|
)
|
||||||
|
|
||||||
|
template <typename Pred, typename Val> auto
|
||||||
|
impl (Pred&& p, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
|
||||||
|
(
|
||||||
|
hb_forward<Pred> (p) == hb_forward<Val> (v)
|
||||||
|
)
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
template <typename Pred, typename Val> auto
|
||||||
|
operator () (Pred&& p, Val &&v) const HB_RETURN (bool,
|
||||||
|
impl (hb_forward<Pred> (p),
|
||||||
|
hb_forward<Val> (v),
|
||||||
|
hb_prioritize)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
HB_FUNCOBJ (hb_match);
|
||||||
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
|
Loading…
Reference in New Issue