Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
stenzek
GitHub Repository: stenzek/duckstation
Path: blob/master/dep/rapidyaml/include/c4/std/vector_fwd.hpp
4265 views
1
#ifndef _C4_STD_VECTOR_FWD_HPP_
2
#define _C4_STD_VECTOR_FWD_HPP_
3
4
/** @file vector_fwd.hpp */
5
6
#include <cstddef>
7
8
// forward declarations for std::vector
9
#if defined(__GLIBCXX__) || defined(__GLIBCPP__) || defined(_MSC_VER)
10
#if defined(_MSC_VER)
11
__pragma(warning(push))
12
__pragma(warning(disable : 4643))
13
#endif
14
namespace std {
15
template<typename> class allocator;
16
#ifdef _GLIBCXX_DEBUG
17
inline namespace __debug {
18
template<typename T, typename Alloc> class vector;
19
}
20
#else
21
template<typename T, typename Alloc> class vector;
22
#endif
23
} // namespace std
24
#if defined(_MSC_VER)
25
__pragma(warning(pop))
26
#endif
27
#elif defined(_LIBCPP_ABI_NAMESPACE)
28
namespace std {
29
inline namespace _LIBCPP_ABI_NAMESPACE {
30
template<typename> class allocator;
31
template<typename T, typename Alloc> class vector;
32
} // namespace _LIBCPP_ABI_NAMESPACE
33
} // namespace std
34
#else
35
#error "unknown standard library"
36
#endif
37
38
#ifndef C4CORE_SINGLE_HEADER
39
#include "c4/substr_fwd.hpp"
40
#endif
41
42
namespace c4 {
43
44
template<class Alloc> c4::substr to_substr(std::vector<char, Alloc> &vec);
45
template<class Alloc> c4::csubstr to_csubstr(std::vector<char, Alloc> const& vec);
46
47
template<class Alloc> bool operator!= (c4::csubstr ss, std::vector<char, Alloc> const& s);
48
template<class Alloc> bool operator== (c4::csubstr ss, std::vector<char, Alloc> const& s);
49
template<class Alloc> bool operator>= (c4::csubstr ss, std::vector<char, Alloc> const& s);
50
template<class Alloc> bool operator> (c4::csubstr ss, std::vector<char, Alloc> const& s);
51
template<class Alloc> bool operator<= (c4::csubstr ss, std::vector<char, Alloc> const& s);
52
template<class Alloc> bool operator< (c4::csubstr ss, std::vector<char, Alloc> const& s);
53
54
template<class Alloc> bool operator!= (std::vector<char, Alloc> const& s, c4::csubstr ss);
55
template<class Alloc> bool operator== (std::vector<char, Alloc> const& s, c4::csubstr ss);
56
template<class Alloc> bool operator>= (std::vector<char, Alloc> const& s, c4::csubstr ss);
57
template<class Alloc> bool operator> (std::vector<char, Alloc> const& s, c4::csubstr ss);
58
template<class Alloc> bool operator<= (std::vector<char, Alloc> const& s, c4::csubstr ss);
59
template<class Alloc> bool operator< (std::vector<char, Alloc> const& s, c4::csubstr ss);
60
61
template<class Alloc> size_t to_chars(c4::substr buf, std::vector<char, Alloc> const& s);
62
template<class Alloc> bool from_chars(c4::csubstr buf, std::vector<char, Alloc> * s);
63
64
} // namespace c4
65
66
#endif // _C4_STD_VECTOR_FWD_HPP_
67
68