| 146 | } |
| 147 | |
| 148 | absl::Status StructValue::GetFieldByName( |
| 149 | absl::string_view name, ProtoWrapperTypeOptions unboxing_options, |
| 150 | const google::protobuf::DescriptorPool* absl_nonnull descriptor_pool, |
| 151 | google::protobuf::MessageFactory* absl_nonnull message_factory, |
| 152 | google::protobuf::Arena* absl_nonnull arena, Value* absl_nonnull result) const { |
| 153 | ABSL_DCHECK(descriptor_pool != nullptr); |
| 154 | ABSL_DCHECK(message_factory != nullptr); |
| 155 | ABSL_DCHECK(arena != nullptr); |
| 156 | ABSL_DCHECK(result != nullptr); |
| 157 | |
| 158 | return variant_.Visit([&](const auto& alternative) -> absl::Status { |
| 159 | return alternative.GetFieldByName(name, unboxing_options, descriptor_pool, |
| 160 | message_factory, arena, result); |
| 161 | }); |
| 162 | } |
| 163 | |
| 164 | absl::Status StructValue::GetFieldByNumber( |
| 165 | int64_t number, ProtoWrapperTypeOptions unboxing_options, |