2024-02-05 22:25:30 -08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "ehs/EHS.h"
|
|
|
|
#include "ehs/Str.h"
|
|
|
|
|
|
|
|
#include "JsonBase.h"
|
|
|
|
|
|
|
|
namespace ehs
|
|
|
|
{
|
2024-08-15 19:28:30 -07:00
|
|
|
class EHS_LIB_IO JsonStr final : public JsonBase
|
2024-02-05 22:25:30 -08:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
Str_8 value;
|
|
|
|
|
|
|
|
JsonStr();
|
|
|
|
|
|
|
|
JsonStr(Str_8 value);
|
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
JsonStr(const Char_8 *value, UInt_64 size = 0);
|
2024-02-05 22:25:30 -08:00
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
JsonStr(JsonStr &&js) noexcept;
|
2024-02-05 22:25:30 -08:00
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
JsonStr(const JsonStr &js) = default;
|
2024-02-05 22:25:30 -08:00
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
JsonStr& operator=(JsonStr &&js) noexcept;
|
2024-02-05 22:25:30 -08:00
|
|
|
|
|
|
|
operator Str_8() const;
|
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
operator Str_8 &();
|
2024-02-05 22:25:30 -08:00
|
|
|
|
2024-08-15 19:28:30 -07:00
|
|
|
Str_8 ToStr(UInt_64 level, bool compact) const override;
|
2024-02-05 22:25:30 -08:00
|
|
|
};
|
|
|
|
}
|