Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: third_party/protobuf/src/google/protobuf/compiler/java/java_lazy_message_field_lite.cc

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Protocol Buffers - Google's data interchange format 1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2008 Google Inc. All rights reserved. 2 // Copyright 2008 Google Inc. All rights reserved.
3 // https://developers.google.com/protocol-buffers/ 3 // https://developers.google.com/protocol-buffers/
4 // 4 //
5 // Redistribution and use in source and binary forms, with or without 5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are 6 // modification, are permitted provided that the following conditions are
7 // met: 7 // met:
8 // 8 //
9 // * Redistributions of source code must retain the above copyright 9 // * Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer. 10 // notice, this list of conditions and the following disclaimer.
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 : ImmutableMessageFieldLiteGenerator( 52 : ImmutableMessageFieldLiteGenerator(
53 descriptor, messageBitIndex, builderBitIndex, context) { 53 descriptor, messageBitIndex, builderBitIndex, context) {
54 } 54 }
55 55
56 ImmutableLazyMessageFieldLiteGenerator:: 56 ImmutableLazyMessageFieldLiteGenerator::
57 ~ImmutableLazyMessageFieldLiteGenerator() {} 57 ~ImmutableLazyMessageFieldLiteGenerator() {}
58 58
59 void ImmutableLazyMessageFieldLiteGenerator:: 59 void ImmutableLazyMessageFieldLiteGenerator::
60 GenerateMembers(io::Printer* printer) const { 60 GenerateMembers(io::Printer* printer) const {
61 printer->Print(variables_, 61 printer->Print(variables_,
62 "private com.google.protobuf.LazyFieldLite $name$_ =\n" 62 "private com.google.protobuf.LazyFieldLite $name$_;");
63 " new com.google.protobuf.LazyFieldLite();\n");
64 63
65 PrintExtraFieldInfo(variables_, printer); 64 PrintExtraFieldInfo(variables_, printer);
66 WriteFieldDocComment(printer, descriptor_); 65 WriteFieldDocComment(printer, descriptor_);
67 printer->Print(variables_, 66 if (SupportFieldPresence(descriptor_->file())) {
68 "$deprecation$public boolean has$capitalized_name$() {\n" 67 printer->Print(variables_,
69 " return $get_has_field_bit_message$;\n" 68 "$deprecation$public boolean has$capitalized_name$() {\n"
70 "}\n"); 69 " return $get_has_field_bit_message$;\n"
70 "}\n");
71 } else {
72 printer->Print(variables_,
73 "$deprecation$public boolean has$capitalized_name$() {\n"
74 " return $name$_ != null;\n"
75 "}\n");
76 }
71 77
72 WriteFieldDocComment(printer, descriptor_); 78 WriteFieldDocComment(printer, descriptor_);
73 printer->Print(variables_, 79 printer->Print(variables_,
74 "$deprecation$public $type$ get$capitalized_name$() {\n" 80 "$deprecation$public $type$ get$capitalized_name$() {\n"
81 " if ($name$_ == null) {\n"
82 " return $type$.getDefaultInstance();\n"
83 " }\n"
75 " return ($type$) $name$_.getValue($type$.getDefaultInstance());\n" 84 " return ($type$) $name$_.getValue($type$.getDefaultInstance());\n"
76 "}\n"); 85 "}\n");
77 86
78 // Field.Builder setField(Field value) 87 // Field.Builder setField(Field value)
79 WriteFieldDocComment(printer, descriptor_); 88 WriteFieldDocComment(printer, descriptor_);
80 printer->Print(variables_, 89 printer->Print(variables_,
81 "private void set$capitalized_name$($type$ value) {\n" 90 "private void set$capitalized_name$($type$ value) {\n"
82 " if (value == null) {\n" 91 " if (value == null) {\n"
83 " throw new NullPointerException();\n" 92 " throw new NullPointerException();\n"
84 " }\n" 93 " }\n"
94 " if ($name$_ == null) {\n"
95 " $name$_ = new com.google.protobuf.LazyFieldLite();\n"
96 " }\n"
85 " $name$_.setValue(value);\n" 97 " $name$_.setValue(value);\n"
86 " $set_has_field_bit_message$;\n" 98 " $set_has_field_bit_message$\n"
87 "}\n"); 99 "}\n");
88 100
89 // Field.Builder setField(Field.Builder builderForValue) 101 // Field.Builder setField(Field.Builder builderForValue)
90 WriteFieldDocComment(printer, descriptor_); 102 WriteFieldDocComment(printer, descriptor_);
91 printer->Print(variables_, 103 printer->Print(variables_,
92 "private void set$capitalized_name$(\n" 104 "private void set$capitalized_name$(\n"
93 " $type$.Builder builderForValue) {\n" 105 " $type$.Builder builderForValue) {\n"
106 " if ($name$_ == null) {\n"
107 " $name$_ = new com.google.protobuf.LazyFieldLite();\n"
108 " }\n"
94 " $name$_.setValue(builderForValue.build());\n" 109 " $name$_.setValue(builderForValue.build());\n"
95 " $set_has_field_bit_message$;\n" 110 " $set_has_field_bit_message$\n"
96 "}\n"); 111 "}\n");
97 112
98 // Field.Builder mergeField(Field value) 113 // Field.Builder mergeField(Field value)
99 WriteFieldDocComment(printer, descriptor_); 114 WriteFieldDocComment(printer, descriptor_);
100 printer->Print(variables_, 115 printer->Print(variables_,
101 "private void merge$capitalized_name$($type$ value) {\n" 116 "private void merge$capitalized_name$($type$ value) {\n"
102 " if ($get_has_field_bit_message$ &&\n" 117 " if (has$capitalized_name$() &&\n"
103 " !$name$_.containsDefaultInstance()) {\n" 118 " !$name$_.containsDefaultInstance()) {\n"
104 " $name$_.setValue(\n" 119 " $name$_.setValue(\n"
105 " $type$.newBuilder(\n" 120 " $type$.newBuilder(\n"
106 " get$capitalized_name$()).mergeFrom(value).buildPartial());\n" 121 " get$capitalized_name$()).mergeFrom(value).buildPartial());\n"
107 " } else {\n" 122 " } else {\n"
123 " if ($name$_ == null) {\n"
124 " $name$_ = new com.google.protobuf.LazyFieldLite();\n"
125 " }\n"
108 " $name$_.setValue(value);\n" 126 " $name$_.setValue(value);\n"
127 " $set_has_field_bit_message$\n"
109 " }\n" 128 " }\n"
110 " $set_has_field_bit_message$;\n"
111 "}\n"); 129 "}\n");
112 130
113 // Field.Builder clearField() 131 // Field.Builder clearField()
114 WriteFieldDocComment(printer, descriptor_); 132 WriteFieldDocComment(printer, descriptor_);
115 printer->Print(variables_, 133 printer->Print(variables_,
116 "private void clear$capitalized_name$() {\n" 134 "private void clear$capitalized_name$() {\n"
117 " $name$_.clear();\n" 135 " $name$_ = null;\n"
118 " $clear_has_field_bit_message$;\n" 136 " $clear_has_field_bit_message$;\n"
119 "}\n"); 137 "}\n");
120 } 138 }
121 139
122 void ImmutableLazyMessageFieldLiteGenerator:: 140 void ImmutableLazyMessageFieldLiteGenerator::
123 GenerateBuilderMembers(io::Printer* printer) const { 141 GenerateBuilderMembers(io::Printer* printer) const {
124 // The comments above the methods below are based on a hypothetical 142 // The comments above the methods below are based on a hypothetical
125 // field of type "Field" called "Field". 143 // field of type "Field" called "Field".
126 144
127 // boolean hasField() 145 // boolean hasField()
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 printer->Print(variables_, 188 printer->Print(variables_,
171 "$deprecation$public Builder clear$capitalized_name$() {\n" 189 "$deprecation$public Builder clear$capitalized_name$() {\n"
172 " copyOnWrite();\n" 190 " copyOnWrite();\n"
173 " instance.clear$capitalized_name$();\n" 191 " instance.clear$capitalized_name$();\n"
174 " return this;\n" 192 " return this;\n"
175 "}\n"); 193 "}\n");
176 } 194 }
177 195
178 196
179 void ImmutableLazyMessageFieldLiteGenerator:: 197 void ImmutableLazyMessageFieldLiteGenerator::
180 GenerateInitializationCode(io::Printer* printer) const { 198 GenerateInitializationCode(io::Printer* printer) const {}
181 printer->Print(variables_, "$name$_.clear();\n");
182 }
183 199
184 void ImmutableLazyMessageFieldLiteGenerator:: 200 void ImmutableLazyMessageFieldLiteGenerator::
185 GenerateVisitCode(io::Printer* printer) const { 201 GenerateVisitCode(io::Printer* printer) const {
186 printer->Print(variables_, 202 printer->Print(variables_,
187 "$name$_ = visitor.visitLazyMessage(\n" 203 "$name$_ = visitor.visitLazyMessage($name$_, other.$name$_);\n");
188 " has$capitalized_name$(), $name$_,\n"
189 " other.has$capitalized_name$(), other.$name$_);\n");
190 } 204 }
191 205
192 void ImmutableLazyMessageFieldLiteGenerator:: 206 void ImmutableLazyMessageFieldLiteGenerator::
193 GenerateParsingCode(io::Printer* printer) const { 207 GenerateParsingCode(io::Printer* printer) const {
194 printer->Print(variables_, 208 printer->Print(variables_,
209 "if ($name$_ == null) {\n"
210 " $name$_ = new com.google.protobuf.LazyFieldLite();\n"
211 "}\n"
195 "$name$_.mergeFrom(input, extensionRegistry);\n"); 212 "$name$_.mergeFrom(input, extensionRegistry);\n");
196 printer->Print(variables_, 213 printer->Print(variables_,
197 "$set_has_field_bit_message$;\n"); 214 "$set_has_field_bit_message$\n");
198 } 215 }
199 216
200 void ImmutableLazyMessageFieldLiteGenerator:: 217 void ImmutableLazyMessageFieldLiteGenerator::
201 GenerateSerializationCode(io::Printer* printer) const { 218 GenerateSerializationCode(io::Printer* printer) const {
202 // Do not de-serialize lazy fields. 219 // Do not de-serialize lazy fields.
203 printer->Print(variables_, 220 printer->Print(variables_,
204 "if ($get_has_field_bit_message$) {\n" 221 "if (has$capitalized_name$()) {\n"
205 " output.writeBytes($number$, $name$_.toByteString());\n" 222 " output.writeBytes($number$, $name$_.toByteString());\n"
206 "}\n"); 223 "}\n");
207 } 224 }
208 225
209 void ImmutableLazyMessageFieldLiteGenerator:: 226 void ImmutableLazyMessageFieldLiteGenerator::
210 GenerateSerializedSizeCode(io::Printer* printer) const { 227 GenerateSerializedSizeCode(io::Printer* printer) const {
211 printer->Print(variables_, 228 printer->Print(variables_,
212 "if ($get_has_field_bit_message$) {\n" 229 "if (has$capitalized_name$()) {\n"
213 " size += com.google.protobuf.CodedOutputStream\n" 230 " size += com.google.protobuf.CodedOutputStream\n"
214 " .computeLazyFieldSize($number$, $name$_);\n" 231 " .computeLazyFieldSize($number$, $name$_);\n"
215 "}\n"); 232 "}\n");
216 } 233 }
217 234
218 // =================================================================== 235 // ===================================================================
219 236
220 ImmutableLazyMessageOneofFieldLiteGenerator:: 237 ImmutableLazyMessageOneofFieldLiteGenerator::
221 ImmutableLazyMessageOneofFieldLiteGenerator(const FieldDescriptor* descriptor, 238 ImmutableLazyMessageOneofFieldLiteGenerator(const FieldDescriptor* descriptor,
222 int messageBitIndex, 239 int messageBitIndex,
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 PrintExtraFieldInfo(variables_, printer); 439 PrintExtraFieldInfo(variables_, printer);
423 WriteFieldDocComment(printer, descriptor_); 440 WriteFieldDocComment(printer, descriptor_);
424 printer->Print(variables_, 441 printer->Print(variables_,
425 "$deprecation$public java.util.List<$type$>\n" 442 "$deprecation$public java.util.List<$type$>\n"
426 " get$capitalized_name$List() {\n" 443 " get$capitalized_name$List() {\n"
427 " java.util.List<$type$> list =\n" 444 " java.util.List<$type$> list =\n"
428 " new java.util.ArrayList<$type$>($name$_.size());\n" 445 " new java.util.ArrayList<$type$>($name$_.size());\n"
429 " for (com.google.protobuf.LazyFieldLite lf : $name$_) {\n" 446 " for (com.google.protobuf.LazyFieldLite lf : $name$_) {\n"
430 " list.add(($type$) lf.getValue($type$.getDefaultInstance()));\n" 447 " list.add(($type$) lf.getValue($type$.getDefaultInstance()));\n"
431 " }\n" 448 " }\n"
432 // TODO(dweis): Make this list immutable? 449 " return java.util.Collections.unmodifiableList(list);\n"
433 " return list;\n"
434 "}\n"); 450 "}\n");
435 WriteFieldDocComment(printer, descriptor_); 451 WriteFieldDocComment(printer, descriptor_);
436 printer->Print(variables_, 452 printer->Print(variables_,
437 "$deprecation$public java.util.List<? extends $type$OrBuilder>\n" 453 "$deprecation$public java.util.List<? extends $type$OrBuilder>\n"
438 " get$capitalized_name$OrBuilderList() {\n" 454 " get$capitalized_name$OrBuilderList() {\n"
439 " return get$capitalized_name$List();\n" 455 " return get$capitalized_name$List();\n"
440 "}\n"); 456 "}\n");
441 WriteFieldDocComment(printer, descriptor_); 457 WriteFieldDocComment(printer, descriptor_);
442 printer->Print(variables_, 458 printer->Print(variables_,
443 "$deprecation$public int get$capitalized_name$Count() {\n" 459 "$deprecation$public int get$capitalized_name$Count() {\n"
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after
697 "for (int i = 0; i < $name$_.size(); i++) {\n" 713 "for (int i = 0; i < $name$_.size(); i++) {\n"
698 " size += com.google.protobuf.CodedOutputStream\n" 714 " size += com.google.protobuf.CodedOutputStream\n"
699 " .computeLazyFieldSize($number$, $name$_.get(i));\n" 715 " .computeLazyFieldSize($number$, $name$_.get(i));\n"
700 "}\n"); 716 "}\n");
701 } 717 }
702 718
703 } // namespace java 719 } // namespace java
704 } // namespace compiler 720 } // namespace compiler
705 } // namespace protobuf 721 } // namespace protobuf
706 } // namespace google 722 } // namespace google
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698