Skip to content

Commit

Permalink
Add semantic annotations for field accessors in java proto lite
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 532204580
  • Loading branch information
protobuf-github-bot authored and Copybara-Service committed May 15, 2023
1 parent d33b00b commit 183521a
Show file tree
Hide file tree
Showing 6 changed files with 64 additions and 60 deletions.
3 changes: 1 addition & 2 deletions objectivec/GPBAny.pbobjc.h

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

27 changes: 14 additions & 13 deletions src/google/protobuf/compiler/java/enum_field_lite.cc
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ namespace google {
namespace protobuf {
namespace compiler {
namespace java {
using Semantic = ::google::protobuf::io::AnnotationCollector::Semantic;

namespace {
bool EnableExperimentalRuntimeForLite() {
Expand Down Expand Up @@ -276,7 +277,7 @@ void ImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$Value(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}
WriteFieldAccessorDocComment(printer, descriptor_, GETTER);
printer->Print(variables_,
Expand All @@ -294,7 +295,7 @@ void ImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldAccessorDocComment(printer, descriptor_, CLEARER,
/* builder */ true);
printer->Print(
Expand All @@ -304,7 +305,7 @@ void ImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}

void ImmutableEnumFieldLiteGenerator::GenerateKotlinDslMembers(
Expand Down Expand Up @@ -495,7 +496,7 @@ void ImmutableEnumOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$Value(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}
WriteFieldAccessorDocComment(printer, descriptor_, GETTER);
printer->Print(variables_,
Expand All @@ -513,7 +514,7 @@ void ImmutableEnumOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldAccessorDocComment(printer, descriptor_, CLEARER,
/* builder */ true);
printer->Print(
Expand All @@ -523,7 +524,7 @@ void ImmutableEnumOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}

// ===================================================================
Expand Down Expand Up @@ -768,7 +769,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(index, value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldAccessorDocComment(printer, descriptor_, LIST_ADDER,
/* builder */ true);
printer->Print(variables_,
Expand All @@ -778,7 +779,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.add$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldAccessorDocComment(printer, descriptor_, LIST_MULTI_ADDER,
/* builder */ true);
printer->Print(variables_,
Expand All @@ -788,7 +789,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.addAll$capitalized_name$(values);"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldAccessorDocComment(printer, descriptor_, CLEARER,
/* builder */ true);
printer->Print(
Expand All @@ -798,7 +799,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

if (SupportUnknownEnumValue(descriptor_)) {
WriteFieldEnumValueAccessorDocComment(printer, descriptor_, LIST_GETTER);
Expand Down Expand Up @@ -830,7 +831,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$Value(index, value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldEnumValueAccessorDocComment(printer, descriptor_, LIST_ADDER,
/* builder */ true);
printer->Print(variables_,
Expand All @@ -840,7 +841,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.add$capitalized_name$Value(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldEnumValueAccessorDocComment(printer, descriptor_,
LIST_MULTI_ADDER,
/* builder */ true);
Expand All @@ -852,7 +853,7 @@ void RepeatedImmutableEnumFieldLiteGenerator::GenerateBuilderMembers(
" instance.addAll$capitalized_name$Value(values);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}
}

Expand Down
13 changes: 7 additions & 6 deletions src/google/protobuf/compiler/java/map_field_lite.cc
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ namespace compiler {
namespace java {

namespace {
using Semantic = ::google::protobuf::io::AnnotationCollector::Semantic;

std::string TypeName(const FieldDescriptor* field,
ClassNameResolver* name_resolver, bool boxed) {
Expand Down Expand Up @@ -602,7 +603,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$Map().clear();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldDocComment(printer, descriptor_);
printer->Print(variables_,
"$deprecation$\n"
Expand All @@ -613,7 +614,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$Map().remove(key);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
const FieldDescriptor* value = MapValueField(descriptor_);
if (GetJavaType(value) == JAVATYPE_ENUM) {
if (context_->options().opensource_runtime) {
Expand Down Expand Up @@ -694,7 +695,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$Map().putAll(values);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
if (SupportUnknownEnumValue(value)) {
printer->Print(
variables_,
Expand Down Expand Up @@ -771,7 +772,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$ValueMap().putAll(values);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}
} else {
if (context_->options().opensource_runtime) {
Expand Down Expand Up @@ -840,7 +841,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$Map().put(key, value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
WriteFieldDocComment(printer, descriptor_);
printer->Print(
variables_,
Expand All @@ -851,7 +852,7 @@ void ImmutableMapFieldLiteGenerator::GenerateBuilderMembers(
" instance.getMutable$capitalized_name$Map().putAll(values);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}
}

Expand Down
35 changes: 18 additions & 17 deletions src/google/protobuf/compiler/java/message_field_lite.cc
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ namespace google {
namespace protobuf {
namespace compiler {
namespace java {
using Semantic = ::google::protobuf::io::AnnotationCollector::Semantic;

namespace {

Expand Down Expand Up @@ -261,7 +262,7 @@ void ImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(value);\n"
" return this;\n"
" }\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -272,7 +273,7 @@ void ImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(builderForValue.build());\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder mergeField(Field value)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -283,7 +284,7 @@ void ImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.merge$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder clearField()
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -293,7 +294,7 @@ void ImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}

void ImmutableMessageFieldLiteGenerator::GenerateKotlinDslMembers(
Expand Down Expand Up @@ -464,7 +465,7 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder setField(Field.Builder builderForValue)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -475,7 +476,7 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(builderForValue.build());\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder mergeField(Field value)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -486,7 +487,7 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.merge$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Field.Builder clearField()
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -497,7 +498,7 @@ void ImmutableMessageOneofFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}

// ===================================================================
Expand Down Expand Up @@ -702,7 +703,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.set$capitalized_name$(index, value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder setRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -714,7 +715,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" builderForValue.build());\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder addRepeatedField(Field value)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -725,7 +726,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.add$capitalized_name$(value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder addRepeatedField(int index, Field value)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -736,7 +737,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.add$capitalized_name$(index, value);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
// Builder addRepeatedField(Field.Builder builderForValue)
WriteFieldDocComment(printer, descriptor_);
printer->Print(variables_,
Expand All @@ -746,7 +747,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.add$capitalized_name$(builderForValue.build());\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder addRepeatedField(int index, Field.Builder builderForValue)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -758,7 +759,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" builderForValue.build());\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder addAllRepeatedField(Iterable<Field> values)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -769,7 +770,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.addAll$capitalized_name$(values);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder clearAllRepeatedField()
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -780,7 +781,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.clear$capitalized_name$();\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);

// Builder removeRepeatedField(int index)
WriteFieldDocComment(printer, descriptor_);
Expand All @@ -791,7 +792,7 @@ void RepeatedImmutableMessageFieldLiteGenerator::GenerateBuilderMembers(
" instance.remove$capitalized_name$(index);\n"
" return this;\n"
"}\n");
printer->Annotate("{", "}", descriptor_);
printer->Annotate("{", "}", descriptor_, Semantic::kSet);
}

void RepeatedImmutableMessageFieldLiteGenerator::GenerateFieldInfo(
Expand Down

0 comments on commit 183521a

Please sign in to comment.