|
|
@ -392,7 +392,7 @@ void upb_Status_VAppendErrorFormat(upb_Status* status, const char* fmt, |
|
|
|
// Must be last.
|
|
|
|
// Must be last.
|
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FileDescriptorSet_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FileDescriptorSet_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__FileDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FileDescriptorProto_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FileDescriptorSet__fields[1] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FileDescriptorSet__fields[1] = { |
|
|
@ -410,13 +410,13 @@ const upb_MiniTable google__protobuf__FileDescriptorSet_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FileDescriptorProto_submsgs[7] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FileDescriptorProto_submsgs[7] = { |
|
|
|
{.submsg = &google__protobuf__DescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__DescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__EnumDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__ServiceDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__ServiceDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__FileOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FileOptions_msg_init}, |
|
|
|
{.submsg = &google__protobuf__SourceCodeInfo_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__SourceCodeInfo_msg_init}, |
|
|
|
{.subenum = &google_protobuf_Edition_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_Edition_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FileDescriptorProto__fields[13] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FileDescriptorProto__fields[13] = { |
|
|
@ -460,14 +460,14 @@ const upb_MiniTable google__protobuf__FileDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_DescriptorProto_submsgs[8] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_DescriptorProto_submsgs[8] = { |
|
|
|
{.submsg = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__DescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__DescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__EnumDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__DescriptorProto__ExtensionRange_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__DescriptorProto__ExtensionRange_msg_init}, |
|
|
|
{.submsg = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FieldDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__MessageOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__MessageOptions_msg_init}, |
|
|
|
{.submsg = &google__protobuf__OneofDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__OneofDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__DescriptorProto__ReservedRange_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__DescriptorProto__ReservedRange_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_DescriptorProto__fields[10] = { |
|
|
|
static const upb_MiniTableField google_protobuf_DescriptorProto__fields[10] = { |
|
|
@ -508,7 +508,7 @@ const upb_MiniTable google__protobuf__DescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_DescriptorProto_ExtensionRange_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_DescriptorProto_ExtensionRange_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__ExtensionRangeOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__ExtensionRangeOptions_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_DescriptorProto_ExtensionRange__fields[3] = { |
|
|
|
static const upb_MiniTableField google_protobuf_DescriptorProto_ExtensionRange__fields[3] = { |
|
|
@ -547,10 +547,10 @@ const upb_MiniTable google__protobuf__DescriptorProto__ReservedRange_msg_init = |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_ExtensionRangeOptions_submsgs[4] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_ExtensionRangeOptions_submsgs[4] = { |
|
|
|
{.submsg = &google__protobuf__ExtensionRangeOptions__Declaration_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__ExtensionRangeOptions__Declaration_msg_init}, |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.subenum = &google_protobuf_ExtensionRangeOptions_VerificationState_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_ExtensionRangeOptions_VerificationState_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_ExtensionRangeOptions__fields[4] = { |
|
|
|
static const upb_MiniTableField google_protobuf_ExtensionRangeOptions__fields[4] = { |
|
|
@ -625,9 +625,9 @@ const upb_MiniTable google__protobuf__ExtensionRangeOptions__Declaration_msg_ini |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FieldDescriptorProto_submsgs[3] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FieldDescriptorProto_submsgs[3] = { |
|
|
|
{.submsg = &google__protobuf__FieldOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FieldOptions_msg_init}, |
|
|
|
{.subenum = &google_protobuf_FieldDescriptorProto_Label_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldDescriptorProto_Label_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FieldDescriptorProto_Type_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldDescriptorProto_Type_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FieldDescriptorProto__fields[11] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FieldDescriptorProto__fields[11] = { |
|
|
@ -685,7 +685,7 @@ const upb_MiniTable google__protobuf__FieldDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_OneofDescriptorProto_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_OneofDescriptorProto_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__OneofOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__OneofOptions_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_OneofDescriptorProto__fields[2] = { |
|
|
|
static const upb_MiniTableField google_protobuf_OneofDescriptorProto__fields[2] = { |
|
|
@ -706,9 +706,9 @@ const upb_MiniTable google__protobuf__OneofDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_EnumDescriptorProto_submsgs[3] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_EnumDescriptorProto_submsgs[3] = { |
|
|
|
{.submsg = &google__protobuf__EnumValueDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumValueDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__EnumOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumOptions_msg_init}, |
|
|
|
{.submsg = &google__protobuf__EnumDescriptorProto__EnumReservedRange_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumDescriptorProto__EnumReservedRange_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_EnumDescriptorProto__fields[5] = { |
|
|
|
static const upb_MiniTableField google_protobuf_EnumDescriptorProto__fields[5] = { |
|
|
@ -753,7 +753,7 @@ const upb_MiniTable google__protobuf__EnumDescriptorProto__EnumReservedRange_msg |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_EnumValueDescriptorProto_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_EnumValueDescriptorProto_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__EnumValueOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__EnumValueOptions_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_EnumValueDescriptorProto__fields[3] = { |
|
|
|
static const upb_MiniTableField google_protobuf_EnumValueDescriptorProto__fields[3] = { |
|
|
@ -775,8 +775,8 @@ const upb_MiniTable google__protobuf__EnumValueDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_ServiceDescriptorProto_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_ServiceDescriptorProto_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__MethodDescriptorProto_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__MethodDescriptorProto_msg_init}, |
|
|
|
{.submsg = &google__protobuf__ServiceOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__ServiceOptions_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_ServiceDescriptorProto__fields[3] = { |
|
|
|
static const upb_MiniTableField google_protobuf_ServiceDescriptorProto__fields[3] = { |
|
|
@ -798,7 +798,7 @@ const upb_MiniTable google__protobuf__ServiceDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_MethodDescriptorProto_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_MethodDescriptorProto_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__MethodOptions_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__MethodOptions_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_MethodDescriptorProto__fields[6] = { |
|
|
|
static const upb_MiniTableField google_protobuf_MethodDescriptorProto__fields[6] = { |
|
|
@ -827,9 +827,9 @@ const upb_MiniTable google__protobuf__MethodDescriptorProto_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FileOptions_submsgs[3] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FileOptions_submsgs[3] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.subenum = &google_protobuf_FileOptions_OptimizeMode_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FileOptions_OptimizeMode_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FileOptions__fields[22] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FileOptions__fields[22] = { |
|
|
@ -898,8 +898,8 @@ const upb_MiniTable google__protobuf__FileOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_MessageOptions_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_MessageOptions_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_MessageOptions__fields[7] = { |
|
|
|
static const upb_MiniTableField google_protobuf_MessageOptions__fields[7] = { |
|
|
@ -953,13 +953,13 @@ const upb_MiniTable google__protobuf__MessageOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FieldOptions_submsgs[7] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FieldOptions_submsgs[7] = { |
|
|
|
{.submsg = &google__protobuf__FieldOptions__EditionDefault_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FieldOptions__EditionDefault_msg_init}, |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.subenum = &google_protobuf_FieldOptions_CType_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldOptions_CType_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FieldOptions_JSType_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldOptions_JSType_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FieldOptions_OptionRetention_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldOptions_OptionRetention_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FieldOptions_OptionTargetType_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FieldOptions_OptionTargetType_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FieldOptions__fields[13] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FieldOptions__fields[13] = { |
|
|
@ -1019,7 +1019,7 @@ const upb_MiniTable google__protobuf__FieldOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FieldOptions_EditionDefault_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FieldOptions_EditionDefault_submsgs[1] = { |
|
|
|
{.subenum = &google_protobuf_Edition_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_Edition_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FieldOptions_EditionDefault__fields[2] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FieldOptions_EditionDefault__fields[2] = { |
|
|
@ -1040,8 +1040,8 @@ const upb_MiniTable google__protobuf__FieldOptions__EditionDefault_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_OneofOptions_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_OneofOptions_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_OneofOptions__fields[2] = { |
|
|
|
static const upb_MiniTableField google_protobuf_OneofOptions__fields[2] = { |
|
|
@ -1090,8 +1090,8 @@ const upb_MiniTable google__protobuf__OneofOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_EnumOptions_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_EnumOptions_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_EnumOptions__fields[5] = { |
|
|
|
static const upb_MiniTableField google_protobuf_EnumOptions__fields[5] = { |
|
|
@ -1143,8 +1143,8 @@ const upb_MiniTable google__protobuf__EnumOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_EnumValueOptions_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_EnumValueOptions_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_EnumValueOptions__fields[4] = { |
|
|
|
static const upb_MiniTableField google_protobuf_EnumValueOptions__fields[4] = { |
|
|
@ -1195,8 +1195,8 @@ const upb_MiniTable google__protobuf__EnumValueOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_ServiceOptions_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_ServiceOptions_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_ServiceOptions__fields[3] = { |
|
|
|
static const upb_MiniTableField google_protobuf_ServiceOptions__fields[3] = { |
|
|
@ -1246,9 +1246,9 @@ const upb_MiniTable google__protobuf__ServiceOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_MethodOptions_submsgs[3] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_MethodOptions_submsgs[3] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption_msg_init}, |
|
|
|
{.subenum = &google_protobuf_MethodOptions_IdempotencyLevel_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_MethodOptions_IdempotencyLevel_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_MethodOptions__fields[4] = { |
|
|
|
static const upb_MiniTableField google_protobuf_MethodOptions__fields[4] = { |
|
|
@ -1299,7 +1299,7 @@ const upb_MiniTable google__protobuf__MethodOptions_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_UninterpretedOption_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_UninterpretedOption_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__UninterpretedOption__NamePart_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__UninterpretedOption__NamePart_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_UninterpretedOption__fields[7] = { |
|
|
|
static const upb_MiniTableField google_protobuf_UninterpretedOption__fields[7] = { |
|
|
@ -1354,12 +1354,12 @@ const upb_MiniTable google__protobuf__UninterpretedOption__NamePart_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSet_submsgs[6] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSet_submsgs[6] = { |
|
|
|
{.subenum = &google_protobuf_FeatureSet_FieldPresence_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_FieldPresence_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FeatureSet_EnumType_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_EnumType_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FeatureSet_RepeatedFieldEncoding_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_RepeatedFieldEncoding_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FeatureSet_Utf8Validation_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_Utf8Validation_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FeatureSet_MessageEncoding_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_MessageEncoding_enum_init}, |
|
|
|
{.subenum = &google_protobuf_FeatureSet_JsonFormat_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_FeatureSet_JsonFormat_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSet__fields[6] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSet__fields[6] = { |
|
|
@ -1378,9 +1378,9 @@ const upb_MiniTable google__protobuf__FeatureSet_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSetDefaults_submsgs[3] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSetDefaults_submsgs[3] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSetDefaults__FeatureSetEditionDefault_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSetDefaults__FeatureSetEditionDefault_msg_init}, |
|
|
|
{.subenum = &google_protobuf_Edition_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_Edition_enum_init}, |
|
|
|
{.subenum = &google_protobuf_Edition_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_Edition_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSetDefaults__fields[3] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSetDefaults__fields[3] = { |
|
|
@ -1400,8 +1400,8 @@ const upb_MiniTable google__protobuf__FeatureSetDefaults_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSetDefaults_FeatureSetEditionDefault_submsgs[2] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_FeatureSetDefaults_FeatureSetEditionDefault_submsgs[2] = { |
|
|
|
{.submsg = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__FeatureSet_msg_init}, |
|
|
|
{.subenum = &google_protobuf_Edition_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_Edition_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSetDefaults_FeatureSetEditionDefault__fields[2] = { |
|
|
|
static const upb_MiniTableField google_protobuf_FeatureSetDefaults_FeatureSetEditionDefault__fields[2] = { |
|
|
@ -1422,7 +1422,7 @@ const upb_MiniTable google__protobuf__FeatureSetDefaults__FeatureSetEditionDefau |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_SourceCodeInfo_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_SourceCodeInfo_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__SourceCodeInfo__Location_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__SourceCodeInfo__Location_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_SourceCodeInfo__fields[1] = { |
|
|
|
static const upb_MiniTableField google_protobuf_SourceCodeInfo__fields[1] = { |
|
|
@ -1464,7 +1464,7 @@ const upb_MiniTable google__protobuf__SourceCodeInfo__Location_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_GeneratedCodeInfo_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_GeneratedCodeInfo_submsgs[1] = { |
|
|
|
{.submsg = &google__protobuf__GeneratedCodeInfo__Annotation_msg_init}, |
|
|
|
{.UPB_PRIVATE(submsg) = &google__protobuf__GeneratedCodeInfo__Annotation_msg_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_GeneratedCodeInfo__fields[1] = { |
|
|
|
static const upb_MiniTableField google_protobuf_GeneratedCodeInfo__fields[1] = { |
|
|
@ -1482,7 +1482,7 @@ const upb_MiniTable google__protobuf__GeneratedCodeInfo_msg_init = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableSub google_protobuf_GeneratedCodeInfo_Annotation_submsgs[1] = { |
|
|
|
static const upb_MiniTableSub google_protobuf_GeneratedCodeInfo_Annotation_submsgs[1] = { |
|
|
|
{.subenum = &google_protobuf_GeneratedCodeInfo_Annotation_Semantic_enum_init}, |
|
|
|
{.UPB_PRIVATE(subenum) = &google_protobuf_GeneratedCodeInfo_Annotation_Semantic_enum_init}, |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static const upb_MiniTableField google_protobuf_GeneratedCodeInfo_Annotation__fields[5] = { |
|
|
|
static const upb_MiniTableField google_protobuf_GeneratedCodeInfo_Annotation__fields[5] = { |
|
|
@ -5881,11 +5881,12 @@ void upb_Arena_DecRefFor(upb_Arena* arena, const void* owner) { |
|
|
|
|
|
|
|
|
|
|
|
upb_MapInsertStatus upb_Message_InsertMapEntry(upb_Map* map, |
|
|
|
upb_MapInsertStatus upb_Message_InsertMapEntry(upb_Map* map, |
|
|
|
const upb_MiniTable* mini_table, |
|
|
|
const upb_MiniTable* mini_table, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
const upb_MiniTableField* f, |
|
|
|
upb_Message* map_entry_message, |
|
|
|
upb_Message* map_entry_message, |
|
|
|
upb_Arena* arena) { |
|
|
|
upb_Arena* arena) { |
|
|
|
|
|
|
|
// TODO: use a variant of upb_MiniTable_GetSubMessageTable() here.
|
|
|
|
const upb_MiniTable* map_entry_mini_table = |
|
|
|
const upb_MiniTable* map_entry_mini_table = |
|
|
|
mini_table->subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
upb_MiniTableSub_Message(mini_table->subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
UPB_ASSERT(map_entry_mini_table); |
|
|
|
UPB_ASSERT(map_entry_mini_table); |
|
|
|
UPB_ASSERT(map_entry_mini_table->field_count == 2); |
|
|
|
UPB_ASSERT(map_entry_mini_table->field_count == 2); |
|
|
|
const upb_MiniTableField* map_entry_key_field = |
|
|
|
const upb_MiniTableField* map_entry_key_field = |
|
|
@ -6016,11 +6017,12 @@ upb_Map* upb_Map_DeepClone(const upb_Map* map, upb_CType key_type, |
|
|
|
|
|
|
|
|
|
|
|
static upb_Map* upb_Message_Map_DeepClone(const upb_Map* map, |
|
|
|
static upb_Map* upb_Message_Map_DeepClone(const upb_Map* map, |
|
|
|
const upb_MiniTable* mini_table, |
|
|
|
const upb_MiniTable* mini_table, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
const upb_MiniTableField* f, |
|
|
|
upb_Message* clone, |
|
|
|
upb_Message* clone, |
|
|
|
upb_Arena* arena) { |
|
|
|
upb_Arena* arena) { |
|
|
|
|
|
|
|
// TODO: use a variant of upb_MiniTable_GetSubMessageTable() here.
|
|
|
|
const upb_MiniTable* map_entry_table = |
|
|
|
const upb_MiniTable* map_entry_table = |
|
|
|
mini_table->subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
upb_MiniTableSub_Message(mini_table->subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
UPB_ASSERT(map_entry_table); |
|
|
|
UPB_ASSERT(map_entry_table); |
|
|
|
|
|
|
|
|
|
|
|
const upb_MiniTableField* key_field = &map_entry_table->fields[0]; |
|
|
|
const upb_MiniTableField* key_field = &map_entry_table->fields[0]; |
|
|
@ -6032,7 +6034,7 @@ static upb_Map* upb_Message_Map_DeepClone(const upb_Map* map, |
|
|
|
if (!cloned_map) { |
|
|
|
if (!cloned_map) { |
|
|
|
return NULL; |
|
|
|
return NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
_upb_Message_SetNonExtensionField(clone, field, &cloned_map); |
|
|
|
_upb_Message_SetNonExtensionField(clone, f, &cloned_map); |
|
|
|
return cloned_map; |
|
|
|
return cloned_map; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -6168,9 +6170,9 @@ upb_Message* _upb_Message_Copy(upb_Message* dst, const upb_Message* src, |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
upb_Array* msg_array = (upb_Array*)msg_ext->data.ptr; |
|
|
|
upb_Array* msg_array = (upb_Array*)msg_ext->data.ptr; |
|
|
|
UPB_ASSERT(msg_array); |
|
|
|
UPB_ASSERT(msg_array); |
|
|
|
upb_Array* cloned_array = |
|
|
|
upb_Array* cloned_array = upb_Array_DeepClone( |
|
|
|
upb_Array_DeepClone(msg_array, upb_MiniTableField_CType(field), |
|
|
|
msg_array, upb_MiniTableField_CType(field), |
|
|
|
msg_ext->ext->UPB_PRIVATE(sub).submsg, arena); |
|
|
|
upb_MiniTableExtension_GetSubMessage(msg_ext->ext), arena); |
|
|
|
if (!cloned_array) { |
|
|
|
if (!cloned_array) { |
|
|
|
return NULL; |
|
|
|
return NULL; |
|
|
|
} |
|
|
|
} |
|
|
@ -7206,7 +7208,7 @@ static void upb_MtDecoder_AllocateSubs(upb_MtDecoder* d, |
|
|
|
upb_MdDecoder_CheckOutOfMemory(&d->base, subs); |
|
|
|
upb_MdDecoder_CheckOutOfMemory(&d->base, subs); |
|
|
|
uint32_t i = 0; |
|
|
|
uint32_t i = 0; |
|
|
|
for (; i < sub_counts.submsg_count; i++) { |
|
|
|
for (; i < sub_counts.submsg_count; i++) { |
|
|
|
subs[i].submsg = &_kUpb_MiniTable_Empty; |
|
|
|
subs[i].UPB_PRIVATE(submsg) = &_kUpb_MiniTable_Empty; |
|
|
|
} |
|
|
|
} |
|
|
|
if (sub_counts.subenum_count) { |
|
|
|
if (sub_counts.subenum_count) { |
|
|
|
upb_MiniTableField* f = d->fields; |
|
|
|
upb_MiniTableField* f = d->fields; |
|
|
@ -7217,7 +7219,7 @@ static void upb_MtDecoder_AllocateSubs(upb_MtDecoder* d, |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
for (; i < sub_counts.submsg_count + sub_counts.subenum_count; i++) { |
|
|
|
for (; i < sub_counts.submsg_count + sub_counts.subenum_count; i++) { |
|
|
|
subs[i].subenum = NULL; |
|
|
|
subs[i].UPB_PRIVATE(subenum) = NULL; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
d->table->subs = subs; |
|
|
|
d->table->subs = subs; |
|
|
@ -7690,6 +7692,10 @@ upb_MiniTable* _upb_MiniTable_Build(const char* data, size_t len, |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#include <stddef.h> |
|
|
|
|
|
|
|
#include <stdint.h> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Must be last.
|
|
|
|
// Must be last.
|
|
|
|
|
|
|
|
|
|
|
|
bool upb_MiniTable_SetSubMessage(upb_MiniTable* table, |
|
|
|
bool upb_MiniTable_SetSubMessage(upb_MiniTable* table, |
|
|
@ -7725,7 +7731,7 @@ bool upb_MiniTable_SetSubMessage(upb_MiniTable* table, |
|
|
|
// TODO: Add this assert back once YouTube is updated to not call
|
|
|
|
// TODO: Add this assert back once YouTube is updated to not call
|
|
|
|
// this function repeatedly.
|
|
|
|
// this function repeatedly.
|
|
|
|
// UPB_ASSERT(table_sub->submsg == &_kUpb_MiniTable_Empty);
|
|
|
|
// UPB_ASSERT(table_sub->submsg == &_kUpb_MiniTable_Empty);
|
|
|
|
table_sub->submsg = sub; |
|
|
|
*table_sub = upb_MiniTableSub_FromMessage(sub); |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -7738,7 +7744,7 @@ bool upb_MiniTable_SetSubEnum(upb_MiniTable* table, upb_MiniTableField* field, |
|
|
|
|
|
|
|
|
|
|
|
upb_MiniTableSub* table_sub = |
|
|
|
upb_MiniTableSub* table_sub = |
|
|
|
(void*)&table->subs[field->UPB_PRIVATE(submsg_index)]; |
|
|
|
(void*)&table->subs[field->UPB_PRIVATE(submsg_index)]; |
|
|
|
table_sub->subenum = sub; |
|
|
|
*table_sub = upb_MiniTableSub_FromEnum(sub); |
|
|
|
return true; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -10283,9 +10289,11 @@ void _upb_FieldDef_BuildMiniTableExtension(upb_DefBuilder* ctx, |
|
|
|
upb_MiniTableExtension* mut_ext = (upb_MiniTableExtension*)ext; |
|
|
|
upb_MiniTableExtension* mut_ext = (upb_MiniTableExtension*)ext; |
|
|
|
upb_MiniTableSub sub = {NULL}; |
|
|
|
upb_MiniTableSub sub = {NULL}; |
|
|
|
if (upb_FieldDef_IsSubMessage(f)) { |
|
|
|
if (upb_FieldDef_IsSubMessage(f)) { |
|
|
|
sub.submsg = upb_MessageDef_MiniTable(f->sub.msgdef); |
|
|
|
const upb_MiniTable* submsg = upb_MessageDef_MiniTable(f->sub.msgdef); |
|
|
|
|
|
|
|
sub = upb_MiniTableSub_FromMessage(submsg); |
|
|
|
} else if (_upb_FieldDef_IsClosedEnum(f)) { |
|
|
|
} else if (_upb_FieldDef_IsClosedEnum(f)) { |
|
|
|
sub.subenum = _upb_EnumDef_MiniTable(f->sub.enumdef); |
|
|
|
const upb_MiniTableEnum* subenum = _upb_EnumDef_MiniTable(f->sub.enumdef); |
|
|
|
|
|
|
|
sub = upb_MiniTableSub_FromEnum(subenum); |
|
|
|
} |
|
|
|
} |
|
|
|
bool ok2 = upb_MiniTableExtension_Init(desc.data, desc.size, mut_ext, |
|
|
|
bool ok2 = upb_MiniTableExtension_Init(desc.data, desc.size, mut_ext, |
|
|
|
upb_MessageDef_MiniTable(f->msgdef), |
|
|
|
upb_MessageDef_MiniTable(f->msgdef), |
|
|
@ -12618,6 +12626,25 @@ typedef union { |
|
|
|
uint32_t size; |
|
|
|
uint32_t size; |
|
|
|
} wireval; |
|
|
|
} wireval; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Ideally these two functions should take the owning MiniTable pointer as a
|
|
|
|
|
|
|
|
// first argument, then we could just put them in mini_table/message.h as nice
|
|
|
|
|
|
|
|
// clean getters. But we don't have that so instead we gotta write these
|
|
|
|
|
|
|
|
// Frankenfunctions that take an array of subtables.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Returns the MiniTable corresponding to a given MiniTableField
|
|
|
|
|
|
|
|
// from an array of MiniTableSubs.
|
|
|
|
|
|
|
|
static const upb_MiniTable* _upb_MiniTableSubs_MessageByField( |
|
|
|
|
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field) { |
|
|
|
|
|
|
|
return upb_MiniTableSub_Message(subs[field->UPB_PRIVATE(submsg_index)]); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Returns the MiniTableEnum corresponding to a given MiniTableField
|
|
|
|
|
|
|
|
// from an array of MiniTableSub.
|
|
|
|
|
|
|
|
static const upb_MiniTableEnum* _upb_MiniTableSubs_EnumByField( |
|
|
|
|
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field) { |
|
|
|
|
|
|
|
return upb_MiniTableSub_Enum(subs[field->UPB_PRIVATE(submsg_index)]); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
static const char* _upb_Decoder_DecodeMessage(upb_Decoder* d, const char* ptr, |
|
|
|
static const char* _upb_Decoder_DecodeMessage(upb_Decoder* d, const char* ptr, |
|
|
|
upb_Message* msg, |
|
|
|
upb_Message* msg, |
|
|
|
const upb_MiniTable* layout); |
|
|
|
const upb_MiniTable* layout); |
|
|
@ -12754,7 +12781,7 @@ static upb_Message* _upb_Decoder_NewSubMessage(upb_Decoder* d, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
upb_TaggedMessagePtr* target) { |
|
|
|
upb_TaggedMessagePtr* target) { |
|
|
|
const upb_MiniTable* subl = subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subl = _upb_MiniTableSubs_MessageByField(subs, field); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
upb_Message* msg = _upb_Message_New(subl, &d->arena); |
|
|
|
upb_Message* msg = _upb_Message_New(subl, &d->arena); |
|
|
|
if (!msg) _upb_Decoder_ErrorJmp(d, kUpb_DecodeStatus_OutOfMemory); |
|
|
|
if (!msg) _upb_Decoder_ErrorJmp(d, kUpb_DecodeStatus_OutOfMemory); |
|
|
@ -12778,7 +12805,7 @@ static upb_Message* _upb_Decoder_ReuseSubMessage( |
|
|
|
upb_Decoder* d, const upb_MiniTableSub* subs, |
|
|
|
upb_Decoder* d, const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableField* field, upb_TaggedMessagePtr* target) { |
|
|
|
const upb_MiniTableField* field, upb_TaggedMessagePtr* target) { |
|
|
|
upb_TaggedMessagePtr tagged = *target; |
|
|
|
upb_TaggedMessagePtr tagged = *target; |
|
|
|
const upb_MiniTable* subl = subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subl = _upb_MiniTableSubs_MessageByField(subs, field); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
if (!upb_TaggedMessagePtr_IsEmpty(tagged) || subl == &_kUpb_MiniTable_Empty) { |
|
|
|
if (!upb_TaggedMessagePtr_IsEmpty(tagged) || subl == &_kUpb_MiniTable_Empty) { |
|
|
|
return _upb_TaggedMessagePtr_GetMessage(tagged); |
|
|
|
return _upb_TaggedMessagePtr_GetMessage(tagged); |
|
|
@ -12829,7 +12856,7 @@ static const char* _upb_Decoder_DecodeSubMessage( |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* submsg, |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* submsg, |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field, int size) { |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field, int size) { |
|
|
|
int saved_delta = upb_EpsCopyInputStream_PushLimit(&d->input, ptr, size); |
|
|
|
int saved_delta = upb_EpsCopyInputStream_PushLimit(&d->input, ptr, size); |
|
|
|
const upb_MiniTable* subl = subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subl = _upb_MiniTableSubs_MessageByField(subs, field); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
ptr = _upb_Decoder_RecurseSubMessage(d, ptr, submsg, subl, DECODE_NOGROUP); |
|
|
|
ptr = _upb_Decoder_RecurseSubMessage(d, ptr, submsg, subl, DECODE_NOGROUP); |
|
|
|
upb_EpsCopyInputStream_PopLimit(&d->input, ptr, saved_delta); |
|
|
|
upb_EpsCopyInputStream_PopLimit(&d->input, ptr, saved_delta); |
|
|
@ -12860,7 +12887,7 @@ UPB_FORCEINLINE |
|
|
|
static const char* _upb_Decoder_DecodeKnownGroup( |
|
|
|
static const char* _upb_Decoder_DecodeKnownGroup( |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* submsg, |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* submsg, |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field) { |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field) { |
|
|
|
const upb_MiniTable* subl = subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subl = _upb_MiniTableSubs_MessageByField(subs, field); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
UPB_ASSERT(subl); |
|
|
|
return _upb_Decoder_DecodeGroup(d, ptr, submsg, subl, field->number); |
|
|
|
return _upb_Decoder_DecodeGroup(d, ptr, submsg, subl, field->number); |
|
|
|
} |
|
|
|
} |
|
|
@ -12913,7 +12940,7 @@ static const char* _upb_Decoder_DecodeEnumArray(upb_Decoder* d, const char* ptr, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
const upb_MiniTableField* field, |
|
|
|
wireval* val) { |
|
|
|
wireval* val) { |
|
|
|
const upb_MiniTableEnum* e = subs[field->UPB_PRIVATE(submsg_index)].subenum; |
|
|
|
const upb_MiniTableEnum* e = _upb_MiniTableSubs_EnumByField(subs, field); |
|
|
|
if (!_upb_Decoder_CheckEnum(d, ptr, msg, e, field, val)) return ptr; |
|
|
|
if (!_upb_Decoder_CheckEnum(d, ptr, msg, e, field, val)) return ptr; |
|
|
|
void* mem = UPB_PTR_AT(_upb_array_ptr(arr), arr->size * 4, void); |
|
|
|
void* mem = UPB_PTR_AT(_upb_array_ptr(arr), arr->size * 4, void); |
|
|
|
arr->size++; |
|
|
|
arr->size++; |
|
|
@ -12984,7 +13011,7 @@ static const char* _upb_Decoder_DecodeEnumPacked( |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* msg, upb_Array* arr, |
|
|
|
upb_Decoder* d, const char* ptr, upb_Message* msg, upb_Array* arr, |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field, |
|
|
|
const upb_MiniTableSub* subs, const upb_MiniTableField* field, |
|
|
|
wireval* val) { |
|
|
|
wireval* val) { |
|
|
|
const upb_MiniTableEnum* e = subs[field->UPB_PRIVATE(submsg_index)].subenum; |
|
|
|
const upb_MiniTableEnum* e = _upb_MiniTableSubs_EnumByField(subs, field); |
|
|
|
int saved_limit = upb_EpsCopyInputStream_PushLimit(&d->input, ptr, val->size); |
|
|
|
int saved_limit = upb_EpsCopyInputStream_PushLimit(&d->input, ptr, val->size); |
|
|
|
char* out = UPB_PTR_AT(_upb_array_ptr(arr), arr->size * 4, void); |
|
|
|
char* out = UPB_PTR_AT(_upb_array_ptr(arr), arr->size * 4, void); |
|
|
|
while (!_upb_Decoder_IsDone(d, &ptr)) { |
|
|
|
while (!_upb_Decoder_IsDone(d, &ptr)) { |
|
|
@ -13124,7 +13151,7 @@ static const char* _upb_Decoder_DecodeToMap(upb_Decoder* d, const char* ptr, |
|
|
|
upb_Map* map = *map_p; |
|
|
|
upb_Map* map = *map_p; |
|
|
|
upb_MapEntry ent; |
|
|
|
upb_MapEntry ent; |
|
|
|
UPB_ASSERT(upb_MiniTableField_Type(field) == kUpb_FieldType_Message); |
|
|
|
UPB_ASSERT(upb_MiniTableField_Type(field) == kUpb_FieldType_Message); |
|
|
|
const upb_MiniTable* entry = subs[field->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* entry = _upb_MiniTableSubs_MessageByField(subs, field); |
|
|
|
|
|
|
|
|
|
|
|
UPB_ASSERT(entry); |
|
|
|
UPB_ASSERT(entry); |
|
|
|
UPB_ASSERT(entry->field_count == 2); |
|
|
|
UPB_ASSERT(entry->field_count == 2); |
|
|
@ -13184,7 +13211,7 @@ static const char* _upb_Decoder_DecodeToSubMessage( |
|
|
|
|
|
|
|
|
|
|
|
if (UPB_UNLIKELY(op == kUpb_DecodeOp_Enum) && |
|
|
|
if (UPB_UNLIKELY(op == kUpb_DecodeOp_Enum) && |
|
|
|
!_upb_Decoder_CheckEnum(d, ptr, msg, |
|
|
|
!_upb_Decoder_CheckEnum(d, ptr, msg, |
|
|
|
subs[field->UPB_PRIVATE(submsg_index)].subenum, |
|
|
|
_upb_MiniTableSubs_EnumByField(subs, field), |
|
|
|
field, val)) { |
|
|
|
field, val)) { |
|
|
|
return ptr; |
|
|
|
return ptr; |
|
|
|
} |
|
|
|
} |
|
|
@ -13502,9 +13529,10 @@ static void _upb_Decoder_CheckUnlinked(upb_Decoder* d, const upb_MiniTable* mt, |
|
|
|
int* op) { |
|
|
|
int* op) { |
|
|
|
// If sub-message is not linked, treat as unknown.
|
|
|
|
// If sub-message is not linked, treat as unknown.
|
|
|
|
if (field->mode & kUpb_LabelFlags_IsExtension) return; |
|
|
|
if (field->mode & kUpb_LabelFlags_IsExtension) return; |
|
|
|
const upb_MiniTableSub* sub = &mt->subs[field->UPB_PRIVATE(submsg_index)]; |
|
|
|
const upb_MiniTable* mt_sub = |
|
|
|
|
|
|
|
_upb_MiniTableSubs_MessageByField(mt->subs, field); |
|
|
|
if ((d->options & kUpb_DecodeOption_ExperimentalAllowUnlinked) || |
|
|
|
if ((d->options & kUpb_DecodeOption_ExperimentalAllowUnlinked) || |
|
|
|
sub->submsg != &_kUpb_MiniTable_Empty) { |
|
|
|
mt_sub != &_kUpb_MiniTable_Empty) { |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
#ifndef NDEBUG |
|
|
|
#ifndef NDEBUG |
|
|
@ -14784,7 +14812,8 @@ static const char* fastdecode_tosubmsg(upb_EpsCopyInputStream* e, |
|
|
|
upb_Message** dst; \
|
|
|
|
upb_Message** dst; \
|
|
|
|
uint32_t submsg_idx = (data >> 16) & 0xff; \
|
|
|
|
uint32_t submsg_idx = (data >> 16) & 0xff; \
|
|
|
|
const upb_MiniTable* tablep = decode_totablep(table); \
|
|
|
|
const upb_MiniTable* tablep = decode_totablep(table); \
|
|
|
|
const upb_MiniTable* subtablep = tablep->subs[submsg_idx].submsg; \
|
|
|
|
const upb_MiniTable* subtablep = \
|
|
|
|
|
|
|
|
upb_MiniTableSub_Message(tablep->subs[submsg_idx]); \
|
|
|
|
fastdecode_submsgdata submsg = {decode_totable(subtablep)}; \
|
|
|
|
fastdecode_submsgdata submsg = {decode_totable(subtablep)}; \
|
|
|
|
fastdecode_arr farr; \
|
|
|
|
fastdecode_arr farr; \
|
|
|
|
\
|
|
|
|
\
|
|
|
@ -15108,7 +15137,8 @@ static void encode_scalar(upb_encstate* e, const void* _field_mem, |
|
|
|
case kUpb_FieldType_Group: { |
|
|
|
case kUpb_FieldType_Group: { |
|
|
|
size_t size; |
|
|
|
size_t size; |
|
|
|
upb_TaggedMessagePtr submsg = *(upb_TaggedMessagePtr*)field_mem; |
|
|
|
upb_TaggedMessagePtr submsg = *(upb_TaggedMessagePtr*)field_mem; |
|
|
|
const upb_MiniTable* subm = subs[f->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subm = |
|
|
|
|
|
|
|
upb_MiniTableSub_Message(subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
if (submsg == 0) { |
|
|
|
if (submsg == 0) { |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
@ -15122,7 +15152,8 @@ static void encode_scalar(upb_encstate* e, const void* _field_mem, |
|
|
|
case kUpb_FieldType_Message: { |
|
|
|
case kUpb_FieldType_Message: { |
|
|
|
size_t size; |
|
|
|
size_t size; |
|
|
|
upb_TaggedMessagePtr submsg = *(upb_TaggedMessagePtr*)field_mem; |
|
|
|
upb_TaggedMessagePtr submsg = *(upb_TaggedMessagePtr*)field_mem; |
|
|
|
const upb_MiniTable* subm = subs[f->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subm = |
|
|
|
|
|
|
|
upb_MiniTableSub_Message(subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
if (submsg == 0) { |
|
|
|
if (submsg == 0) { |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
@ -15211,7 +15242,8 @@ static void encode_array(upb_encstate* e, const upb_Message* msg, |
|
|
|
case kUpb_FieldType_Group: { |
|
|
|
case kUpb_FieldType_Group: { |
|
|
|
const upb_TaggedMessagePtr* start = _upb_array_constptr(arr); |
|
|
|
const upb_TaggedMessagePtr* start = _upb_array_constptr(arr); |
|
|
|
const upb_TaggedMessagePtr* ptr = start + arr->size; |
|
|
|
const upb_TaggedMessagePtr* ptr = start + arr->size; |
|
|
|
const upb_MiniTable* subm = subs[f->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subm = |
|
|
|
|
|
|
|
upb_MiniTableSub_Message(subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
if (--e->depth == 0) encode_err(e, kUpb_EncodeStatus_MaxDepthExceeded); |
|
|
|
if (--e->depth == 0) encode_err(e, kUpb_EncodeStatus_MaxDepthExceeded); |
|
|
|
do { |
|
|
|
do { |
|
|
|
size_t size; |
|
|
|
size_t size; |
|
|
@ -15226,7 +15258,8 @@ static void encode_array(upb_encstate* e, const upb_Message* msg, |
|
|
|
case kUpb_FieldType_Message: { |
|
|
|
case kUpb_FieldType_Message: { |
|
|
|
const upb_TaggedMessagePtr* start = _upb_array_constptr(arr); |
|
|
|
const upb_TaggedMessagePtr* start = _upb_array_constptr(arr); |
|
|
|
const upb_TaggedMessagePtr* ptr = start + arr->size; |
|
|
|
const upb_TaggedMessagePtr* ptr = start + arr->size; |
|
|
|
const upb_MiniTable* subm = subs[f->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* subm = |
|
|
|
|
|
|
|
upb_MiniTableSub_Message(subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
if (--e->depth == 0) encode_err(e, kUpb_EncodeStatus_MaxDepthExceeded); |
|
|
|
if (--e->depth == 0) encode_err(e, kUpb_EncodeStatus_MaxDepthExceeded); |
|
|
|
do { |
|
|
|
do { |
|
|
|
size_t size; |
|
|
|
size_t size; |
|
|
@ -15265,7 +15298,8 @@ static void encode_map(upb_encstate* e, const upb_Message* msg, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableSub* subs, |
|
|
|
const upb_MiniTableField* f) { |
|
|
|
const upb_MiniTableField* f) { |
|
|
|
const upb_Map* map = *UPB_PTR_AT(msg, f->offset, const upb_Map*); |
|
|
|
const upb_Map* map = *UPB_PTR_AT(msg, f->offset, const upb_Map*); |
|
|
|
const upb_MiniTable* layout = subs[f->UPB_PRIVATE(submsg_index)].submsg; |
|
|
|
const upb_MiniTable* layout = |
|
|
|
|
|
|
|
upb_MiniTableSub_Message(subs[f->UPB_PRIVATE(submsg_index)]); |
|
|
|
UPB_ASSERT(layout->field_count == 2); |
|
|
|
UPB_ASSERT(layout->field_count == 2); |
|
|
|
|
|
|
|
|
|
|
|
if (map == NULL) return; |
|
|
|
if (map == NULL) return; |
|
|
|