...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::process::v2::environment::key_view — A view type for a key of an environment.
// In header: <boost/process/v2/environment.hpp> struct key_view { // types typedef char_type value_type; typedef key_char_traits< char_type > traits_type; typedef basic_string_view< char_type, traits_type > string_view_type; typedef std::basic_string< char_type, key_char_traits< char_type > > string_type; // public member functions key_view(); key_view(const key_view &) = default; key_view(key_view &&); template<typename Source, typename = typename std::enable_if<is_constructible<string_view_type, Source>::value>::type> key_view(const Source &); key_view(const char_type *); key_view(char_type *); ~key_view() = default; key_view & operator=(const key_view &) = default; key_view & operator=(key_view &&); key_view & operator=(string_view_type); void swap(key_view &) noexcept; string_view_type native() const noexcept; operator string_view_type() const; int compare(const key_view &) const noexcept; int compare(string_view_type) const; int compare(const value_type *) const; template<typename CharT, typename Traits = std::char_traits<CharT>, typename Alloc = std::allocator<CharT> > std::basic_string< CharT, Traits, Alloc > basic_string(const Alloc & = Alloc()) const; std::string string() const; std::wstring wstring() const; string_type native_string() const; bool empty() const; const value_type * data() const; std::size_t size() const; };
key_view
public member functionskey_view();
key_view(const key_view & p) = default;
key_view(key_view && p);
template<typename Source, typename = typename std::enable_if<is_constructible<string_view_type, Source>::value>::type> key_view(const Source & source);
key_view(const char_type * p);
key_view(char_type * p);
~key_view() = default;
key_view & operator=(const key_view & p) = default;
key_view & operator=(key_view && p);
key_view & operator=(string_view_type source);
void swap(key_view & other) noexcept;
string_view_type native() const noexcept;
operator string_view_type() const;
int compare(const key_view & p) const noexcept;
int compare(string_view_type str) const;
int compare(const value_type * s) const;
template<typename CharT, typename Traits = std::char_traits<CharT>, typename Alloc = std::allocator<CharT> > std::basic_string< CharT, Traits, Alloc > basic_string(const Alloc & alloc = Alloc()) const;
std::string string() const;
std::wstring wstring() const;
string_type native_string() const;
bool empty() const;
const value_type * data() const;
std::size_t size() const;