cpp_enum_field.h
Go to the documentation of this file.
1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2008 Google Inc. All rights reserved.
3 // https://developers.google.com/protocol-buffers/
4 //
5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are
7 // met:
8 //
9 // * Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 // * Redistributions in binary form must reproduce the above
12 // copyright notice, this list of conditions and the following disclaimer
13 // in the documentation and/or other materials provided with the
14 // distribution.
15 // * Neither the name of Google Inc. nor the names of its
16 // contributors may be used to endorse or promote products derived from
17 // this software without specific prior written permission.
18 //
19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 
31 // Author: kenton@google.com (Kenton Varda)
32 // Based on original Protocol Buffers design by
33 // Sanjay Ghemawat, Jeff Dean, and others.
34 
35 #ifndef GOOGLE_PROTOBUF_COMPILER_CPP_ENUM_FIELD_H__
36 #define GOOGLE_PROTOBUF_COMPILER_CPP_ENUM_FIELD_H__
37 
38 #include <map>
39 #include <string>
41 
42 namespace google {
43 namespace protobuf {
44 namespace compiler {
45 namespace cpp {
46 
48  public:
51 
52  // implements FieldGenerator ---------------------------------------
53  void GeneratePrivateMembers(io::Printer* printer) const;
54  void GenerateAccessorDeclarations(io::Printer* printer) const;
56  void GenerateClearingCode(io::Printer* printer) const;
57  void GenerateMergingCode(io::Printer* printer) const;
58  void GenerateSwappingCode(io::Printer* printer) const;
59  void GenerateConstructorCode(io::Printer* printer) const;
60  void GenerateCopyConstructorCode(io::Printer* printer) const;
61  void GenerateMergeFromCodedStream(io::Printer* printer) const;
62  void GenerateSerializeWithCachedSizes(io::Printer* printer) const;
64  void GenerateByteSize(io::Printer* printer) const;
65 
66  private:
68 };
69 
71  public:
73  const Options& options);
75 
76  // implements FieldGenerator ---------------------------------------
78  void GenerateClearingCode(io::Printer* printer) const;
79  void GenerateSwappingCode(io::Printer* printer) const;
80  void GenerateConstructorCode(io::Printer* printer) const;
81 
82  private:
84 };
85 
87  public:
89  const Options& options);
91 
92  // implements FieldGenerator ---------------------------------------
93  void GeneratePrivateMembers(io::Printer* printer) const;
94  void GenerateAccessorDeclarations(io::Printer* printer) const;
96  void GenerateClearingCode(io::Printer* printer) const;
97  void GenerateMergingCode(io::Printer* printer) const;
98  void GenerateSwappingCode(io::Printer* printer) const;
99  void GenerateConstructorCode(io::Printer* printer) const;
100  void GenerateCopyConstructorCode(io::Printer* printer) const {}
101  void GenerateMergeFromCodedStream(io::Printer* printer) const;
103  void GenerateSerializeWithCachedSizes(io::Printer* printer) const;
105  void GenerateByteSize(io::Printer* printer) const;
106 
107  private:
109 };
110 
111 } // namespace cpp
112 } // namespace compiler
113 } // namespace protobuf
114 } // namespace google
115 
116 #endif // GOOGLE_PROTOBUF_COMPILER_CPP_ENUM_FIELD_H__
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(RepeatedEnumFieldGenerator)
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateMergeFromCodedStream
void GenerateMergeFromCodedStream(io::Printer *printer) const
Definition: cpp_enum_field.cc:326
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateCopyConstructorCode
void GenerateCopyConstructorCode(io::Printer *printer) const
Definition: cpp_enum_field.h:100
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateMergingCode
void GenerateMergingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:108
google::protobuf::FieldDescriptor
Definition: src/google/protobuf/descriptor.h:515
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateSwappingCode
void GenerateSwappingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:315
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::GenerateInlineAccessorDefinitions
void GenerateInlineAccessorDefinitions(io::Printer *printer) const
Definition: cpp_enum_field.cc:193
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateClearingCode
void GenerateClearingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:103
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateByteSize
void GenerateByteSize(io::Printer *printer) const
Definition: cpp_enum_field.cc:481
options
Message * options
Definition: src/google/protobuf/descriptor.cc:3119
google::protobuf::compiler::cpp::EnumFieldGenerator::EnumFieldGenerator
EnumFieldGenerator(const FieldDescriptor *descriptor, const Options &options)
Definition: cpp_enum_field.cc:62
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator
Definition: cpp_enum_field.h:86
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::~EnumOneofFieldGenerator
~EnumOneofFieldGenerator()
Definition: cpp_enum_field.cc:191
descriptor
Descriptor * descriptor
Definition: php/ext/google/protobuf/protobuf.h:936
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateSerializeWithCachedSizesToArray
void GenerateSerializeWithCachedSizesToArray(io::Printer *printer) const
Definition: cpp_enum_field.cc:455
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateSerializeWithCachedSizesToArray
void GenerateSerializeWithCachedSizesToArray(io::Printer *printer) const
Definition: cpp_enum_field.cc:168
google::protobuf::compiler::cpp::EnumFieldGenerator::GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumFieldGenerator)
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateByteSize
void GenerateByteSize(io::Printer *printer) const
Definition: cpp_enum_field.cc:176
google::protobuf::compiler::cpp::FieldGenerator
Definition: cpp_field.h:71
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateConstructorCode
void GenerateConstructorCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:118
google::protobuf::compiler::cpp::EnumOneofFieldGenerator
Definition: cpp_enum_field.h:70
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateInlineAccessorDefinitions
void GenerateInlineAccessorDefinitions(io::Printer *printer) const
Definition: cpp_enum_field.cc:84
google::protobuf::compiler::cpp::EnumFieldGenerator
Definition: cpp_enum_field.h:47
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateSwappingCode
void GenerateSwappingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:113
google::protobuf::compiler::cpp::EnumFieldGenerator::GeneratePrivateMembers
void GeneratePrivateMembers(io::Printer *printer) const
Definition: cpp_enum_field.cc:70
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::~RepeatedEnumFieldGenerator
~RepeatedEnumFieldGenerator()
Definition: cpp_enum_field.cc:241
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::GenerateSwappingCode
void GenerateSwappingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:223
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::GenerateConstructorCode
void GenerateConstructorCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:227
cpp
Definition: third_party/googletest/googlemock/scripts/generator/cpp/__init__.py:1
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateMergeFromCodedStream
void GenerateMergeFromCodedStream(io::Printer *printer) const
Definition: cpp_enum_field.cc:129
google::protobuf::compiler::cpp::Options
Definition: cpp_options.h:52
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateSerializeWithCachedSizes
void GenerateSerializeWithCachedSizes(io::Printer *printer) const
Definition: cpp_enum_field.cc:426
google::protobuf::io::Printer
Definition: printer.h:181
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateSerializeWithCachedSizes
void GenerateSerializeWithCachedSizes(io::Printer *printer) const
Definition: cpp_enum_field.cc:160
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::RepeatedEnumFieldGenerator
RepeatedEnumFieldGenerator(const FieldDescriptor *descriptor, const Options &options)
Definition: cpp_enum_field.cc:235
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateAccessorDeclarations
void GenerateAccessorDeclarations(io::Printer *printer) const
Definition: cpp_enum_field.cc:75
google::protobuf::compiler::cpp::EnumFieldGenerator::GenerateCopyConstructorCode
void GenerateCopyConstructorCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:123
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateClearingCode
void GenerateClearingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:303
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(EnumOneofFieldGenerator)
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::EnumOneofFieldGenerator
EnumOneofFieldGenerator(const FieldDescriptor *descriptor, const Options &options)
Definition: cpp_enum_field.cc:185
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateMergeFromCodedStreamWithPacking
void GenerateMergeFromCodedStreamWithPacking(io::Printer *printer) const
Definition: cpp_enum_field.cc:357
google::protobuf::compiler::cpp::EnumFieldGenerator::~EnumFieldGenerator
~EnumFieldGenerator()
Definition: cpp_enum_field.cc:68
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GeneratePrivateMembers
void GeneratePrivateMembers(io::Printer *printer) const
Definition: cpp_enum_field.cc:243
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateInlineAccessorDefinitions
void GenerateInlineAccessorDefinitions(io::Printer *printer) const
Definition: cpp_enum_field.cc:267
cpp_field.h
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateAccessorDeclarations
void GenerateAccessorDeclarations(io::Printer *printer) const
Definition: cpp_enum_field.cc:253
compiler
Definition: plugin.pb.cc:22
google
Definition: data_proto2_to_proto3_util.h:11
google::protobuf::compiler::cpp::EnumOneofFieldGenerator::GenerateClearingCode
void GenerateClearingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:218
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateMergingCode
void GenerateMergingCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:309
google::protobuf::compiler::cpp::RepeatedEnumFieldGenerator::GenerateConstructorCode
void GenerateConstructorCode(io::Printer *printer) const
Definition: cpp_enum_field.cc:321


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:06:48