class
keyA key parsed from a TOML document.
These are used as the internal keys for a toml::
const toml::table tbl = R"( a = 1 b = 2 c = 3 )"_toml; for (auto&& [k, v] : tbl) std::cout << "key '"sv << k << "' defined at "sv << k.source() << "\n";
key 'a' defined at line 2, column 5 key 'b' defined at line 3, column 7 key 'c' defined at line 4, column 9
Constructors, destructors, conversion operators
- key() defaulted noexcept
- Default constructor.
-
key(std::
string_view k, source_ region&& src = {}) explicit - Constructs a key from a string view and source region.
-
key(std::
string_view k, const source_ region& src) explicit - Constructs a key from a string view and source region.
-
key(std::
string&& k, source_ region&& src = {}) explicit noexcept - Constructs a key from a string and source region.
-
key(std::
string&& k, const source_ region& src) explicit noexcept - Constructs a key from a string and source region.
-
key(const char* k,
source_
region&& src = {}) explicit - Constructs a key from a c-string and source region.
-
key(const char* k,
const source_
region& src) explicit - Constructs a key from a c-string view and source region.
-
key(std::
wstring_view k, source_ region&& src = {}) explicit - Constructs a key from a wide string view and source region.
-
key(std::
wstring_view k, const source_ region& src) explicit - Constructs a key from a wide string and source region.
Equality and Comparison
- auto operator!=(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() != rhs.str()
. -
auto operator!=(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() != rhs
. -
auto operator!=(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs != rhs.str()
. - auto operator<(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() < rhs.str()
. -
auto operator<(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() < rhs
. -
auto operator<(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs < rhs.str()
. - auto operator<=(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() <= rhs.str()
. -
auto operator<=(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() <= rhs
. -
auto operator<=(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs <= rhs.str()
. - auto operator==(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() == rhs.str()
. -
auto operator==(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() == rhs
. -
auto operator==(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs == rhs.str()
. - auto operator>(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() > rhs.str()
. -
auto operator>(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() > rhs
. -
auto operator>(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs > rhs.str()
. - auto operator>=(const key& lhs, const key& rhs) → bool noexcept
- Returns true if
lhs.str() >= rhs.str()
. -
auto operator>=(const key& lhs,
std::
string_view rhs) → bool noexcept - Returns true if
lhs.str() >= rhs
. -
auto operator>=(std::
string_view lhs, const key& rhs) → bool noexcept - Returns true if
lhs >= rhs.str()
.
Iteration
- using const_iterator = const char*
- A const iterator for iterating over the characters in the key.
-
using iterator = const_
iterator - A const iterator for iterating over the characters in the key.
-
auto begin() const → const_
iterator noexcept - Returns an iterator to the first character in the key's backing string.
-
auto end() const → const_
iterator noexcept - Returns an iterator to one-past-the-last character in the key's backing string.
Metadata
-
auto source() const → const source_
region& noexcept - Returns the source region responsible for specifying this key during parsing.
String operations
- auto data() const → const char* noexcept
- Returns a pointer to the start of the key's underlying string.
- auto empty() const → bool noexcept
- Returns true if the key's underlying string is empty.
- auto length() const → size_t noexcept
- Returns the length of the key's underlying string.
- operator std::string_view() const noexcept
- Returns a view of the key's underlying string.
-
auto str() const → std::
string_view noexcept - Returns a view of the key's underlying string.
Friends
-
auto operator<<(std::
ostream& lhs, const key& rhs) → std:: ostream& - Prints the key's underlying string out to the stream.
Function documentation
toml:: key:: key(std:: wstring_view k,
source_ region&& src = {}) explicit
Constructs a key from a wide string view and source region.
toml:: key:: key(std:: wstring_view k,
const source_ region& src) explicit
Constructs a key from a wide string and source region.