Skip to main content

predicate_tag Concept

Concept satisfied by a tag that defines a custom predicate. More...

Definition​

template <class Tag_T, class T>
concept micro_os_plus::micro_test_plus::extension::predicate_tag = requires (const T& operand) {
      requires printable<std::remove_cvref_t<decltype (Tag_T::symbol)>>;
      { Tag_T::apply (operand) } -> std::convertible_to<bool>;
    }

Description​

Concept satisfied by a tag that defines a custom predicate.

The tag of extension::predicate_op is a structure with a static symbol, which the failure reports write before the operand, and a static apply() member function template, which receives the operand, unwrapped, and returns the result of the predicate. The symbol must be printable; the result of apply() must be convertible to bool.

Template Parameters
Tag_T

The type of the tag.

T

The type of the operand, as apply() receives it.

Definition at line 477 of file extension.h.

  template<class Tag_T, class T>
  concept predicate_tag = requires (const T& operand) {
  requires printable<std::remove_cvref_t<decltype (Tag_T::symbol)>>;
  { Tag_T::apply (operand) } -> std::convertible_to<bool>;
  }

Generated via doxygen2docusaurus 2.2.8 by Doxygen 1.18.0.