attrtypes/escstring.hpp

struct gviz::attrtypes::EscNameSetRef

Public Members

const std::string_view graph = ""
const std::string_view node = ""
const std::string_view edge = ""
const std::string_view label = ""
const std::string_view head = ""
const std::string_view tail = ""
template<typename StringT = std::string>
class gviz::attrtypes::EscString

Public Functions

inline constexpr EscString(const char *format, std::size_t size)
inline constexpr EscString(StringT format)
inline constexpr StringT get_format() const
inline constexpr const StringT &get_format_ref() const
inline constexpr Occurences get_occurences() const noexcept
inline constexpr bool operator==(const EscString &other) const
inline constexpr bool operator!=(const EscString &other) const
inline constexpr std::size_t apply_size(const EscNameSetRef &nameset) const
template<typename Iterator>
inline constexpr std::size_t apply(Iterator dstbegin, Iterator dstend, const EscNameSetRef &nameset = {}) const
template<typename OutStringT = std::string, typename Fappend = decltype(default_outstring_append<OutStringT>)>
inline constexpr OutStringT apply_into(OutStringT output, const EscNameSetRef &nameset = {}, Fappend append = default_outstring_append<OutStringT>) const
template<typename OutStringT = std::string, typename Finit = decltype(default_outstring_init<OutStringT>), typename Fappend = decltype(default_outstring_append<OutStringT>)>
inline constexpr OutStringT apply(const EscNameSetRef &nameset = {}, Finit init = default_outstring_init<OutStringT>, Fappend append = default_outstring_append<OutStringT>) const

Private Types

using iterator = typename StringT::iterator
using const_iterator = typename StringT::const_iterator

Private Members

Occurences occurences = {}
StringT format_ = {}

Private Static Functions

static inline constexpr Occurences count_occurences(const_iterator str, const_iterator end) noexcept

Private Static Attributes

static constexpr auto backslash_char_sv = std::string_view("\\", 1)
template<typename StrT = std::string>
static constexpr std::decay_t<StrT(std::size_t)> default_outstring_init = +[](std::size_t size) -> StrT{auto ret = StrT{};ret.reserve(size);return ret;}
template<typename StrT = std::string>
static constexpr std::decay_t<void(StrT&, const std::string_view&)> default_outstring_append = +[](StrT& lhs, const std::string_view& rhs){lhs += rhs;}
struct gviz::attrtypes::EscString::Occurences

Public Functions

inline constexpr std::size_t sum() const noexcept
inline constexpr bool operator==(const Occurences &other) const
inline constexpr bool operator!=(const Occurences &other) const

Public Members

std::size_t graph = 0
std::size_t node = 0
std::size_t edge = 0
std::size_t label = 0
std::size_t head = 0
std::size_t tail = 0
namespace gviz
namespace attrtypes
file escstring.hpp
#include <>
#include <>

Functions

constexpr auto operator""_escstr(const char *str, std::size_t size)
dir /home/cthulhu/projects/repos/libgvizard/include/gvizard/attrtypes
dir /home/cthulhu/projects/repos/libgvizard/include/gvizard
dir /home/cthulhu/projects/repos/libgvizard/include