path_rules.hpp 1019 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. //
  2. // Copyright (c) 2016-2019 Vinnie Falco (vinnie dot falco at gmail dot com)
  3. //
  4. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. //
  7. // Official repository: https://github.com/boostorg/url
  8. //
  9. #ifndef BOOST_URL_RFC_DETAIL_PATH_RULES_HPP
  10. #define BOOST_URL_RFC_DETAIL_PATH_RULES_HPP
  11. #include "boost/url/rfc/pchars.hpp"
  12. #include "boost/url/rfc/pct_encoded_rule.hpp"
  13. #include "boost/url/grammar/delim_rule.hpp"
  14. #include "boost/url/grammar/range_rule.hpp"
  15. #include "boost/url/grammar/tuple_rule.hpp"
  16. namespace boost {
  17. namespace urls {
  18. namespace detail {
  19. /** Rule for segment
  20. @par BNF
  21. @code
  22. segment = *pchar
  23. @endcode
  24. @par Specification
  25. @li <a href="https://datatracker.ietf.org/doc/html/rfc3986#section-3.3"
  26. >3.3. Path (rfc3986)</a>
  27. @see
  28. @ref grammar::parse.
  29. */
  30. constexpr auto segment_rule =
  31. pct_encoded_rule(pchars);
  32. } // detail
  33. } // urls
  34. } // boost
  35. #endif