aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/protoc/src/google/protobuf/compiler/java/field.h
diff options
context:
space:
mode:
authornechda <nechda@yandex-team.com>2024-08-29 23:50:27 +0300
committernechda <nechda@yandex-team.com>2024-08-30 00:05:25 +0300
commite10d6638f07a82edae3ea8197b9f5c0affcc07ea (patch)
tree571c38cec05813766a1ad290c9d51ce7ace52919 /contrib/libs/protoc/src/google/protobuf/compiler/java/field.h
parente79b38f2bbbf78d295d1901d2a79f898022d5224 (diff)
downloadydb-e10d6638f07a82edae3ea8197b9f5c0affcc07ea.tar.gz
Update cpp-protobuf to 22.5
Привет!\ Этот PR переключат cpp & python библиотеки protobuf на версию 22.5 Если у вас возникли проблемы после влития этого PR: 1. Если начали падать канон тесты, то проведите их переканонизацию 2. Прочитайте <https://wiki.yandex-team.ru/users/nechda/obnovlenie-cpp-protobuf-22.5/> страничку с основными изменениями 3. Если страничка в вики не помогла, то пишите в [DEVTOOLSSUPPORT](https://st.yandex-team.ru/DEVTOOLSSUPPORT) 7fecade616c20a841b9e9af7b7998bdfc8d2807d
Diffstat (limited to 'contrib/libs/protoc/src/google/protobuf/compiler/java/field.h')
-rw-r--r--contrib/libs/protoc/src/google/protobuf/compiler/java/field.h49
1 files changed, 25 insertions, 24 deletions
diff --git a/contrib/libs/protoc/src/google/protobuf/compiler/java/field.h b/contrib/libs/protoc/src/google/protobuf/compiler/java/field.h
index 481fbdb456..1229ce3a8a 100644
--- a/contrib/libs/protoc/src/google/protobuf/compiler/java/field.h
+++ b/contrib/libs/protoc/src/google/protobuf/compiler/java/field.h
@@ -36,13 +36,13 @@
#define GOOGLE_PROTOBUF_COMPILER_JAVA_FIELD_H__
#include <cstdint>
-#include <map>
#include <memory>
#include <string>
-#include <google/protobuf/stubs/logging.h>
-#include <google/protobuf/stubs/common.h>
-#include <google/protobuf/descriptor.h>
+#include "y_absl/container/flat_hash_map.h"
+#include "y_absl/log/absl_check.h"
+#include "google/protobuf/descriptor.h"
+#include "google/protobuf/port.h"
namespace google {
namespace protobuf {
@@ -66,8 +66,12 @@ namespace java {
class ImmutableFieldGenerator {
public:
ImmutableFieldGenerator() {}
+ ImmutableFieldGenerator(const ImmutableFieldGenerator&) = delete;
+ ImmutableFieldGenerator& operator=(const ImmutableFieldGenerator&) = delete;
virtual ~ImmutableFieldGenerator();
+ virtual int GetMessageBitIndex() const = 0;
+ virtual int GetBuilderBitIndex() const = 0;
virtual int GetNumBitsForMessage() const = 0;
virtual int GetNumBitsForBuilder() const = 0;
virtual void GenerateInterfaceMembers(io::Printer* printer) const = 0;
@@ -77,9 +81,8 @@ class ImmutableFieldGenerator {
virtual void GenerateBuilderClearCode(io::Printer* printer) const = 0;
virtual void GenerateMergingCode(io::Printer* printer) const = 0;
virtual void GenerateBuildingCode(io::Printer* printer) const = 0;
- virtual void GenerateParsingCode(io::Printer* printer) const = 0;
- virtual void GenerateParsingCodeFromPacked(io::Printer* printer) const;
- virtual void GenerateParsingDoneCode(io::Printer* printer) const = 0;
+ virtual void GenerateBuilderParsingCode(io::Printer* printer) const = 0;
+ virtual void GenerateBuilderParsingCodeFromPacked(io::Printer* printer) const;
virtual void GenerateSerializationCode(io::Printer* printer) const = 0;
virtual void GenerateSerializedSizeCode(io::Printer* printer) const = 0;
virtual void GenerateFieldBuilderInitializationCode(
@@ -90,14 +93,14 @@ class ImmutableFieldGenerator {
virtual void GenerateHashCode(io::Printer* printer) const = 0;
virtual TProtoStringType GetBoxedType() const = 0;
-
- private:
- GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ImmutableFieldGenerator);
};
class ImmutableFieldLiteGenerator {
public:
ImmutableFieldLiteGenerator() {}
+ ImmutableFieldLiteGenerator(const ImmutableFieldLiteGenerator&) = delete;
+ ImmutableFieldLiteGenerator& operator=(const ImmutableFieldLiteGenerator&) =
+ delete;
virtual ~ImmutableFieldLiteGenerator();
virtual int GetNumBitsForMessage() const = 0;
@@ -110,9 +113,6 @@ class ImmutableFieldLiteGenerator {
virtual void GenerateKotlinDslMembers(io::Printer* printer) const = 0;
virtual TProtoStringType GetBoxedType() const = 0;
-
- private:
- GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(ImmutableFieldLiteGenerator);
};
@@ -121,6 +121,8 @@ template <typename FieldGeneratorType>
class FieldGeneratorMap {
public:
explicit FieldGeneratorMap(const Descriptor* descriptor, Context* context);
+ FieldGeneratorMap(const FieldGeneratorMap&) = delete;
+ FieldGeneratorMap& operator=(const FieldGeneratorMap&) = delete;
~FieldGeneratorMap();
const FieldGeneratorType& get(const FieldDescriptor* field) const;
@@ -128,14 +130,12 @@ class FieldGeneratorMap {
private:
const Descriptor* descriptor_;
std::vector<std::unique_ptr<FieldGeneratorType>> field_generators_;
-
- GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(FieldGeneratorMap);
};
template <typename FieldGeneratorType>
inline const FieldGeneratorType& FieldGeneratorMap<FieldGeneratorType>::get(
const FieldDescriptor* field) const {
- GOOGLE_CHECK_EQ(field->containing_type(), descriptor_);
+ Y_ABSL_CHECK_EQ(field->containing_type(), descriptor_);
return *field_generators_[field->index()];
}
@@ -170,18 +170,19 @@ struct OneofGeneratorInfo {
};
// Set some common variables used in variable FieldGenerators.
-void SetCommonFieldVariables(const FieldDescriptor* descriptor,
- const FieldGeneratorInfo* info,
- std::map<TProtoStringType, TProtoStringType>* variables);
+void SetCommonFieldVariables(
+ const FieldDescriptor* descriptor, const FieldGeneratorInfo* info,
+ y_absl::flat_hash_map<y_absl::string_view, TProtoStringType>* variables);
// Set some common oneof variables used in OneofFieldGenerators.
-void SetCommonOneofVariables(const FieldDescriptor* descriptor,
- const OneofGeneratorInfo* info,
- std::map<TProtoStringType, TProtoStringType>* variables);
+void SetCommonOneofVariables(
+ const FieldDescriptor* descriptor, const OneofGeneratorInfo* info,
+ y_absl::flat_hash_map<y_absl::string_view, TProtoStringType>* variables);
// Print useful comments before a field's accessors.
-void PrintExtraFieldInfo(const std::map<TProtoStringType, TProtoStringType>& variables,
- io::Printer* printer);
+void PrintExtraFieldInfo(
+ const y_absl::flat_hash_map<y_absl::string_view, TProtoStringType>& variables,
+ io::Printer* printer);
} // namespace java
} // namespace compiler