is_path_like
Determine if T can be treated like std::filesystem::path during conversions.
Synopsis
Defined in header <boost/json/conversion.hpp>.
template<
class T>
struct is_path_like;
Description
Given t, a glvalue of type T, if
-
given
It, the type denoted bydecltype(std::begin(t)),std::iterator_traits<It>::iterator_categoryis well-formed and denotes a type; and -
std::iterator_traits<It>::value_typeisT; and -
T::value_typeis well-formed and denotes a type; and -
T::string_typeis well-formed, denotes a type, and is an alias forstd::basic_string< T::value_type >;
then the trait provides the member constant value that is equal to true. Otherwise, value is equal to false.
Users can specialize the trait for their own types if they don’t want them to be treated like filesystem paths. For example:
namespace boost {
namespace json {
template <>
struct is_path_like<your::path> : std::false_type
{ };
} // namespace boost
} // namespace json
Types Satisfying the Trait
See Also
Convenience header <boost/json.hpp>.