Go to the documentation of this file.
58 variables_[
"other_has_property_check"] =
"other." +
variables_[
"property_name"] +
".Length != 0";
72 "private readonly static $type_name$ $property_name$DefaultValue = $default_value$;\n\n");
77 "private $type_name$ $name_def_message$;\n");
85 "$access_level$ $type_name$ $property_name$ {\n"
86 " get { return $name$_ ?? $property_name$DefaultValue; }\n"
91 "$access_level$ $type_name$ $property_name$ {\n"
92 " get { if ($has_field_check$) { return $name$_; } else { return $property_name$DefaultValue; } }\n"
98 "$access_level$ $type_name$ $property_name$ {\n"
99 " get { return $name$_; }\n"
105 " $set_has_field$;\n");
110 " $name$_ = value;\n");
114 " $name$_ = pb::ProtoPreconditions.CheckNotNull(value, \"value\");\n");
120 printer->
Print(
variables_,
"/// <summary>Gets whether the \"$descriptor_name$\" field is set</summary>\n");
124 "$access_level$ bool Has$property_name$ {\n"
129 "$name$_ != null; }\n}\n");
133 "$has_field_check$; }\n}\n");
137 printer->
Print(
variables_,
"/// <summary>Clears the value of the \"$descriptor_name$\" field</summary>\n");
141 "$access_level$ void Clear$property_name$() {\n");
147 printer->
Print(
"}\n");
154 "if ($other_has_property_check$) {\n"
155 " $property_name$ = other.$property_name$;\n"
164 "$property_name$ = input.Read$capitalized_type_name$();\n");
170 "if ($has_property_check$) {\n"
171 " output.WriteRawTag($tag_bytes$);\n"
172 " output.Write$capitalized_type_name$($property_name$);\n"
179 "if ($has_property_check$) {\n");
182 if (fixedSize == -1) {
185 "size += $tag_size$ + pb::CodedOutputStream.Compute$capitalized_type_name$Size($property_name$);\n");
188 "size += $tag_size$ + $fixed_size$;\n",
189 "fixed_size",
StrCat(fixedSize),
193 printer->
Print(
"}\n");
197 const char *text =
"if ($has_property_check$) hash ^= $property_name$.GetHashCode();\n";
199 text =
"if ($has_property_check$) hash ^= pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.GetHashCode($property_name$);\n";
201 text =
"if ($has_property_check$) hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode($property_name$);\n";
206 const char *text =
"if ($property_name$ != other.$property_name$) return false;\n";
208 text =
"if (!pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.Equals($property_name$, other.$property_name$)) return false;\n";
210 text =
"if (!pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.Equals($property_name$, other.$property_name$)) return false;\n";
217 "PrintField(\"$descriptor_name$\", $has_property_check$, $property_name$, writer);\n");
222 "$name$_ = other.$name$_;\n");
228 "pb::FieldCodec.For$capitalized_type_name$($tag$, $default_value$)");
236 "$access_level$ static readonly pb::Extension<$extended_type$, $type_name$> $property_name$ =\n"
237 " new pb::Extension<$extended_type$, $type_name$>($number$, ");
239 printer->
Print(
");\n");
256 "$access_level$ $type_name$ $property_name$ {\n"
257 " get { return $has_property_check$ ? ($type_name$) $oneof_name$_ : $default_value$; }\n"
262 " $oneof_name$_ = value;\n");
266 " $oneof_name$_ = pb::ProtoPreconditions.CheckNotNull(value, \"value\");\n");
270 " $oneof_name$Case_ = $oneof_property_name$OneofCase.$property_name$;\n"
276 "/// <summary>Gets whether the \"$descriptor_name$\" field is set</summary>\n");
280 "$access_level$ bool Has$property_name$ {\n"
281 " get { return $oneof_name$Case_ == $oneof_property_name$OneofCase.$property_name$; }\n"
285 "/// <summary> Clears the value of the oneof if it's currently set to \"$descriptor_name$\" </summary>\n");
289 "$access_level$ void Clear$property_name$() {\n"
290 " if ($has_property_check$) {\n"
291 " Clear$oneof_property_name$();\n"
298 printer->
Print(
variables_,
"$property_name$ = other.$property_name$;\n");
303 "PrintField(\"$descriptor_name$\", $has_property_check$, $oneof_name$_, writer);\n");
309 "$property_name$ = input.Read$capitalized_type_name$();\n");
314 "$property_name$ = other.$property_name$;\n");
virtual void GenerateSerializedSizeCode(io::Printer *printer)
void Print(const std::map< std::string, std::string > &variables, const char *text)
virtual void GenerateCloningCode(io::Printer *printer)
virtual void WriteHash(io::Printer *printer)
virtual void GenerateMergingCode(io::Printer *printer)
string StrCat(const AlphaNum &a, const AlphaNum &b)
virtual void GenerateMembers(io::Printer *printer)
PrimitiveOneofFieldGenerator(const FieldDescriptor *descriptor, int presenceIndex, const Options *options)
PrimitiveFieldGenerator(const FieldDescriptor *descriptor, int presenceIndex, const Options *options)
void SetCommonOneofFieldVariables(std::map< string, string > *variables)
int GetFixedSize(FieldDescriptor::Type type)
virtual void GenerateMergingCode(io::Printer *printer)
const FieldDescriptor * descriptor_
bool IsProto2(const FileDescriptor *descriptor)
void AddDeprecatedFlag(io::Printer *printer)
std::map< string, string > variables_
virtual void GenerateParsingCode(io::Printer *printer)
virtual void GenerateSerializationCode(io::Printer *printer)
~PrimitiveFieldGenerator()
const FileDescriptor * file() const
void AddPublicMemberAttributes(io::Printer *printer)
~PrimitiveOneofFieldGenerator()
virtual void GenerateParsingCode(io::Printer *printer)
virtual void GenerateExtensionCode(io::Printer *printer)
virtual void GenerateCloningCode(io::Printer *printer)
bool IsNullable(const FieldDescriptor *descriptor)
virtual void GenerateCodecCode(io::Printer *printer)
void WritePropertyDocComment(io::Printer *printer, const FieldDescriptor *field)
virtual void WriteToString(io::Printer *printer)
virtual void WriteToString(io::Printer *printer)
virtual void WriteEquals(io::Printer *printer)
virtual void GenerateMembers(io::Printer *printer)
libaditof
Author(s):
autogenerated on Wed May 21 2025 02:06:49