11 #ifndef BOOST_PROPERTY_TREE_PTREE_FWD_HPP_INCLUDED
12 #define BOOST_PROPERTY_TREE_PTREE_FWD_HPP_INCLUDED
21 namespace boost {
namespace property_tree
24 template <
typename T>
struct less_nocase;
29 template <
class Key,
class Data,
class KeyCompare = std::less<Key> >
35 template <
typename String,
typename Translator>
40 concept PropertyTreePath<class Path> {
48 bool Path::empty()
const;
51 bool Path::single()
const;
54 std::string Path::dump()
const;
56 concept PropertyTreeKey<class Key> {
57 PropertyTreePath
path;
58 requires SameType<Key, PropertyTreePath<path>::key_type>;
60 concept PropertyTreeTranslator<class Tr> {
61 typename internal_type;
62 typename external_type;
68 template <
typename Key>
79 template <
typename Internal,
typename External>
105 #ifndef BOOST_NO_STD_WSTRING
131 template<
class K,
class D,
class C>
138 #if !defined(BOOST_PROPERTY_TREE_DOXYGEN_INVOKED)
140 # define BOOST_PROPERTY_TREE_THROW(e) BOOST_THROW_EXCEPTION(e)