diff options
author | max42 <max42@yandex-team.com> | 2023-06-30 11:13:34 +0300 |
---|---|---|
committer | max42 <max42@yandex-team.com> | 2023-06-30 11:13:34 +0300 |
commit | 3e1899838408bbad47622007aa382bc8a2b01f87 (patch) | |
tree | 0f21c1e6add187ddb6c3ccc048a7d640ce03fb87 /library/cpp/skiff/skiff_schema.cpp | |
parent | 5463eb3f5e72a86f858a3d27c886470a724ede34 (diff) | |
download | ydb-3e1899838408bbad47622007aa382bc8a2b01f87.tar.gz |
Revert "YT-19324: move YT provider to ydb/library/yql"
This reverts commit ca272f12fdd0e8d5c3e957fc87939148f1caaf72, reversing
changes made to 49f8acfc8b0b5c0071b804423bcf53fda26c7c12.
Diffstat (limited to 'library/cpp/skiff/skiff_schema.cpp')
-rw-r--r-- | library/cpp/skiff/skiff_schema.cpp | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/library/cpp/skiff/skiff_schema.cpp b/library/cpp/skiff/skiff_schema.cpp deleted file mode 100644 index c762896ad0..0000000000 --- a/library/cpp/skiff/skiff_schema.cpp +++ /dev/null @@ -1,164 +0,0 @@ -#include "skiff_schema.h" - -#include "skiff.h" - -#include <util/generic/hash.h> - -namespace NSkiff { - -//////////////////////////////////////////////////////////////////////////////// - -bool operator==(const TSkiffSchema& lhs, const TSkiffSchema& rhs) -{ - if (lhs.GetWireType() != rhs.GetWireType() || lhs.GetName() != rhs.GetName()) { - return false; - } - const auto& lhsChildren = lhs.GetChildren(); - const auto& rhsChildren = rhs.GetChildren(); - return std::equal( - std::begin(lhsChildren), - std::end(lhsChildren), - std::begin(rhsChildren), - std::end(rhsChildren), - TSkiffSchemaPtrEqual()); -} - -bool operator!=(const TSkiffSchema& lhs, const TSkiffSchema& rhs) -{ - return !(lhs == rhs); -} - -//////////////////////////////////////////////////////////////////////////////// - -void PrintShortDebugString(const std::shared_ptr<const TSkiffSchema>& schema, IOutputStream* out) -{ - (*out) << ToString(schema->GetWireType()); - if (!IsSimpleType(schema->GetWireType())) { - auto children = schema->GetChildren(); - if (!children.empty()) { - (*out) << '<'; - for (const auto& child : children) { - PrintShortDebugString(child, out); - (*out) << ';'; - } - (*out) << '>'; - } - } -} - -TString GetShortDebugString(const std::shared_ptr<const TSkiffSchema>& schema) -{ - TStringStream out; - PrintShortDebugString(schema, &out); - return out.Str(); -} - -std::shared_ptr<TSimpleTypeSchema> CreateSimpleTypeSchema(EWireType type) -{ - return std::make_shared<TSimpleTypeSchema>(type); -} - -static void VerifyNonemptyChildren(const TSkiffSchemaList& children, EWireType wireType) -{ - if (children.empty()) { - ythrow TSkiffException() << "\"" << ToString(wireType) << "\" must have at least one child"; - } -} - -std::shared_ptr<TTupleSchema> CreateTupleSchema(TSkiffSchemaList children) -{ - return std::make_shared<TTupleSchema>(std::move(children)); -} - -std::shared_ptr<TVariant8Schema> CreateVariant8Schema(TSkiffSchemaList children) -{ - VerifyNonemptyChildren(children, EWireType::Variant8); - return std::make_shared<TVariant8Schema>(std::move(children)); -} - -std::shared_ptr<TVariant16Schema> CreateVariant16Schema(TSkiffSchemaList children) -{ - VerifyNonemptyChildren(children, EWireType::Variant16); - return std::make_shared<TVariant16Schema>(std::move(children)); -} - -std::shared_ptr<TRepeatedVariant8Schema> CreateRepeatedVariant8Schema(TSkiffSchemaList children) -{ - VerifyNonemptyChildren(children, EWireType::RepeatedVariant8); - return std::make_shared<TRepeatedVariant8Schema>(std::move(children)); -} - -std::shared_ptr<TRepeatedVariant16Schema> CreateRepeatedVariant16Schema(TSkiffSchemaList children) -{ - VerifyNonemptyChildren(children, EWireType::RepeatedVariant16); - return std::make_shared<TRepeatedVariant16Schema>(std::move(children)); -} - -//////////////////////////////////////////////////////////////////////////////// - -TSkiffSchema::TSkiffSchema(EWireType type) - : Type_(type) -{ } - -EWireType TSkiffSchema::GetWireType() const -{ - return Type_; -} - -std::shared_ptr<TSkiffSchema> TSkiffSchema::SetName(TString name) -{ - Name_ = std::move(name); - return shared_from_this(); -} - -const TString& TSkiffSchema::GetName() const -{ - return Name_; -} - -const TSkiffSchemaList& TSkiffSchema::GetChildren() const -{ - static const TSkiffSchemaList children; - return children; -} - -//////////////////////////////////////////////////////////////////////////////// - -TSimpleTypeSchema::TSimpleTypeSchema(EWireType type) - : TSkiffSchema(type) -{ - Y_VERIFY(IsSimpleType(type)); -} - -//////////////////////////////////////////////////////////////////////////////// - -size_t TSkiffSchemaPtrHasher::operator()(const std::shared_ptr<TSkiffSchema>& schema) const -{ - return THash<NSkiff::TSkiffSchema>()(*schema); -} - -size_t TSkiffSchemaPtrEqual::operator()( - const std::shared_ptr<TSkiffSchema>& lhs, - const std::shared_ptr<TSkiffSchema>& rhs) const -{ - return *lhs == *rhs; -} - -//////////////////////////////////////////////////////////////////////////////// - -} // namespace NSkiff - -//////////////////////////////////////////////////////////////////////////////// - -size_t THash<NSkiff::TSkiffSchema>::operator()(const NSkiff::TSkiffSchema &schema) const -{ - auto hash = CombineHashes( - THash<TString>()(schema.GetName()), - static_cast<size_t>(schema.GetWireType())); - for (const auto& child : schema.GetChildren()) { - hash = CombineHashes(hash, (*this)(*child)); - } - return hash; -} - -//////////////////////////////////////////////////////////////////////////////// |