@ -60,7 +60,8 @@ bool CompareFieldNumbers(const FieldDescriptor* d1, const FieldDescriptor* d2) {
return d1 - > number ( ) < d2 - > number ( ) ;
}
MessageGenerator : : MessageGenerator ( const Descriptor * descriptor , const Options * options )
MessageGenerator : : MessageGenerator ( const Descriptor * descriptor ,
const Options * options )
: SourceGeneratorBase ( descriptor - > file ( ) , options ) ,
descriptor_ ( descriptor ) {
@ -185,7 +186,8 @@ void MessageGenerator::Generate(io::Printer* printer) {
}
printer - > Outdent ( ) ;
printer - > Print ( " } \n " ) ;
// TODO: Should we put the oneof .proto comments here? It's unclear exactly where they should go.
// TODO: Should we put the oneof .proto comments here?
// It's unclear exactly where they should go.
printer - > Print (
vars ,
" private $property_name$OneofCase $name$Case_ = $property_name$OneofCase.None; \n "
@ -220,7 +222,8 @@ void MessageGenerator::Generate(io::Printer* printer) {
for ( int i = 0 ; i < descriptor_ - > nested_type_count ( ) ; i + + ) {
// Don't generate nested types for maps...
if ( ! IsMapEntryMessage ( descriptor_ - > nested_type ( i ) ) ) {
MessageGenerator messageGenerator ( descriptor_ - > nested_type ( i ) , this - > options ( ) ) ;
MessageGenerator messageGenerator (
descriptor_ - > nested_type ( i ) , this - > options ( ) ) ;
messageGenerator . Generate ( printer ) ;
}
}
@ -268,7 +271,8 @@ void MessageGenerator::GenerateCloningCode(io::Printer* printer) {
// Clone just the right field for each oneof
for ( int i = 0 ; i < descriptor_ - > oneof_decl_count ( ) ; + + i ) {
vars [ " name " ] = UnderscoresToCamelCase ( descriptor_ - > oneof_decl ( i ) - > name ( ) , false ) ;
vars [ " property_name " ] = UnderscoresToCamelCase ( descriptor_ - > oneof_decl ( i ) - > name ( ) , true ) ;
vars [ " property_name " ] = UnderscoresToCamelCase (
descriptor_ - > oneof_decl ( i ) - > name ( ) , true ) ;
printer - > Print ( vars , " switch (other.$property_name$Case) { \n " ) ;
printer - > Indent ( ) ;
for ( int j = 0 ; j < descriptor_ - > oneof_decl ( i ) - > field_count ( ) ; j + + ) {
@ -449,7 +453,8 @@ void MessageGenerator::GenerateMergingMethods(io::Printer* printer) {
uint32 tag = internal : : WireFormatLite : : MakeTag ( field - > number ( ) , wt ) ;
// Handle both packed and unpacked repeated fields with the same Read*Array call;
// the two generated cases are the packed and unpacked tags.
// TODO(jonskeet): Check that is_packable is equivalent to is_repeated && wt in { VARINT, FIXED32, FIXED64 }.
// TODO(jonskeet): Check that is_packable is equivalent to
// is_repeated && wt in { VARINT, FIXED32, FIXED64 }.
// It looks like it is...
if ( field - > is_packable ( ) ) {
printer - > Print (