summaryrefslogtreecommitdiffstats
path: root/library/cpp/yt/yson_string/string.cpp
diff options
context:
space:
mode:
authorbabenko <[email protected]>2026-05-18 18:23:26 +0300
committerbabenko <[email protected]>2026-05-18 18:44:09 +0300
commitb7add35b490546eabbcd8ee474117c90cd6819ac (patch)
treebc03314b91f85f2145dbd719169da527ab76b0fa /library/cpp/yt/yson_string/string.cpp
parentfdb5a72481f8924abbc5e3215b68d7fa9c04eedf (diff)
YT-22593: Migrate yt/yt/ytree to std::string
commit_hash:3466775b052bc8a85a2aa85e9605968e7a5ea025
Diffstat (limited to 'library/cpp/yt/yson_string/string.cpp')
-rw-r--r--library/cpp/yt/yson_string/string.cpp34
1 files changed, 19 insertions, 15 deletions
diff --git a/library/cpp/yt/yson_string/string.cpp b/library/cpp/yt/yson_string/string.cpp
index c21783b204a..2680cdbcdcf 100644
--- a/library/cpp/yt/yson_string/string.cpp
+++ b/library/cpp/yt/yson_string/string.cpp
@@ -61,13 +61,6 @@ EYsonType TYsonStringBuf::GetType() const
////////////////////////////////////////////////////////////////////////////////
-TYsonString::TYsonString()
-{
- Begin_ = nullptr;
- Size_ = 0;
- Type_ = EYsonType::Node; // fake
-}
-
TYsonString::TYsonString(const TYsonStringBuf& ysonStringBuf)
{
if (ysonStringBuf) {
@@ -94,21 +87,32 @@ TYsonString::TYsonString(
TYsonString::TYsonString(
const TString& data,
EYsonType type)
- : Payload_(TCowString(data))
+ : TYsonString(TCowString(data), type)
+{ }
+
+TYsonString::TYsonString(
+ TCowString data,
+ EYsonType type)
+ : Payload_(std::move(data))
, Begin_(std::get<TCowString>(Payload_).data())
- , Size_(data.length())
+ , Size_(std::get<TCowString>(Payload_).length())
, Type_(type)
{ }
TYsonString::TYsonString(
+ std::string data,
+ EYsonType type)
+ : TYsonString(TCowString(std::move(data)), type)
+{ }
+
+TYsonString::TYsonString(
const TSharedRef& data,
EYsonType type)
-{
- Payload_ = data.GetHolder();
- Begin_ = data.Begin();
- Size_ = data.Size();
- Type_ = type;
-}
+ : Payload_(data.GetHolder())
+ , Begin_(data.Begin())
+ , Size_(data.Size())
+ , Type_(type)
+{ }
TYsonString::operator bool() const
{