SourcePP
Several modern C++20 libraries for sanely parsing Valve's formats.
Loading...
Searching...
No Matches
kvpp::KV1< S > Class Template Reference

#include <KV1.h>

Inheritance diagram for kvpp::KV1< S >:
Collaboration diagram for kvpp::KV1< S >:

Public Member Functions

 KV1 (std::string_view kv1Data, bool useEscapeSequences_=false)
Public Member Functions inherited from kvpp::KV1ElementReadable< std::string_view >
std::string_view getKey () const
 Get the key associated with the element.
std::string_view getValue () const
 Get the value associated with the element.
std::string_view getConditional () const
 Get the conditional associated with the element.
bool hasChild (std::string_view childKey) const
 Check if the element has one or more children with the given key.
uint64_t getChildCount () const
 Get the number of child elements.
const std::vector< KV1ElementReadable > & getChildren () const
 Get the child elements of the element.
constexpr iterator begin ()
constexpr iterator end ()
constexpr const_iterator cbegin () const
constexpr const_iterator cend () const
const KV1ElementReadableoperator[] (unsigned int n) const
 Get the child element of the element at the given index.
const KV1ElementReadableoperator() (std::string_view childKey) const
 Get the first child element of the element with the given key.
bool isInvalid () const
 Check if the given element is invalid.
 operator bool () const

Protected Attributes

std::string backingData
bool useEscapeSequences
Protected Attributes inherited from kvpp::KV1ElementReadable< std::string_view >
std::string_view key
std::string_view value
std::string_view conditional
std::vector< KV1ElementReadablechildren

Additional Inherited Members

Public Types inherited from kvpp::KV1ElementReadable< std::string_view >
using iterator
using const_iterator
Static Public Member Functions inherited from kvpp::KV1ElementReadable< std::string_view >
static const KV1ElementReadablegetInvalid ()
Protected Member Functions inherited from kvpp::KV1ElementReadable< std::string_view >
 KV1ElementReadable ()=default
Static Protected Member Functions inherited from kvpp::KV1ElementReadable< std::string_view >
static void read (BufferStreamReadOnly &stream, BufferStream &backing, std::vector< KV1ElementReadable > &elements, const sourcepp::parser::text::EscapeSequenceMap &escapeSequences)

Detailed Description

template<typename S = std::string_view>
requires std::convertible_to<S, std::string_view>
class kvpp::KV1< S >

Definition at line 216 of file KV1.h.

Constructor & Destructor Documentation

◆ KV1()

template<typename S = std::string_view>
kvpp::KV1< S >::KV1 ( std::string_view kv1Data,
bool useEscapeSequences_ = false )
inlineexplicit

Definition at line 218 of file KV1.h.

Member Data Documentation

◆ backingData

template<typename S = std::string_view>
std::string kvpp::KV1< S >::backingData
protected

Definition at line 239 of file KV1.h.

◆ useEscapeSequences

template<typename S = std::string_view>
bool kvpp::KV1< S >::useEscapeSequences
protected

Definition at line 240 of file KV1.h.


The documentation for this class was generated from the following file: