| 276 | bool HasNext() override { return index_ < size_; } |
| 277 | |
| 278 | absl::Status Next(const google::protobuf::DescriptorPool* absl_nonnull descriptor_pool, |
| 279 | google::protobuf::MessageFactory* absl_nonnull message_factory, |
| 280 | google::protobuf::Arena* absl_nonnull arena, |
| 281 | Value* absl_nonnull result) override { |
| 282 | ABSL_DCHECK(descriptor_pool != nullptr); |
| 283 | ABSL_DCHECK(message_factory != nullptr); |
| 284 | ABSL_DCHECK(arena != nullptr); |
| 285 | ABSL_DCHECK(result != nullptr); |
| 286 | |
| 287 | if (ABSL_PREDICT_FALSE(index_ >= size_)) { |
| 288 | return absl::FailedPreconditionError( |
| 289 | "`ValueIterator::Next` called after `ValueIterator::HasNext` " |
| 290 | "returned false"); |
| 291 | } |
| 292 | *result = common_internal::ParsedJsonValue( |
| 293 | &reflection_.Values(*message_, index_), arena); |
| 294 | ++index_; |
| 295 | return absl::OkStatus(); |
| 296 | } |
| 297 | |
| 298 | absl::StatusOr<bool> Next1( |
| 299 | const google::protobuf::DescriptorPool* absl_nonnull descriptor_pool, |
nothing calls this directly
no test coverage detected