string_constraint.h 696 B

123456789101112131415161718192021222324252627282930313233
  1. #pragma once
  2. #include <string>
  3. #include <jvalidate/constraint/constraint.h>
  4. #include <jvalidate/detail/string.h>
  5. #include <jvalidate/forward.h>
  6. namespace jvalidate::constraint {
  7. class MinLengthConstraint : public SimpleConstraint<MinLengthConstraint> {
  8. public:
  9. int64_t value;
  10. public:
  11. MinLengthConstraint(int64_t value) : value(value) {}
  12. };
  13. class MaxLengthConstraint : public SimpleConstraint<MaxLengthConstraint> {
  14. public:
  15. int64_t value;
  16. public:
  17. MaxLengthConstraint(int64_t value) : value(value) {}
  18. };
  19. class PatternConstraint : public SimpleConstraint<PatternConstraint> {
  20. public:
  21. std::string regex;
  22. public:
  23. PatternConstraint(std::string const & regex) : regex(regex) {}
  24. };
  25. }