Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

39 rader
812 B

  1. #pragma once
  2. #include <cpphibernate/config.h>
  3. namespace cpphibernate
  4. {
  5. namespace __impl
  6. {
  7. /**
  8. * @brief Helper class to build limit objects.
  9. */
  10. template<typename X, typename = void>
  11. struct limit_builder;
  12. }
  13. /**
  14. * @brief Evaluates to true_t if the passed type is a limit modifier, false_t otherwise.
  15. */
  16. template<typename T>
  17. struct is_limit_modifier;
  18. /**
  19. * @brief Is true if the passed type is a limit modifier, false otherwise.
  20. */
  21. template<typename T>
  22. constexpr decltype(auto) is_limit_modifier_v = is_limit_modifier<T>::value;
  23. /**
  24. * @brief Predicate to create new limit objects.
  25. */
  26. constexpr decltype(auto) limit = mp::generic_predicate<__impl::limit_builder> { };
  27. }
  28. #include "limit.inl"