| 286 | } |
| 287 | |
| 288 | Status GetFieldMetadata(int field_index, ArrayData* out) { |
| 289 | auto nodes = metadata_->nodes(); |
| 290 | CHECK_FLATBUFFERS_NOT_NULL(nodes, "Table.nodes"); |
| 291 | // pop off a field |
| 292 | if (field_index >= static_cast<int>(nodes->size())) { |
| 293 | return Status::Invalid("Ran out of field metadata, likely malformed"); |
| 294 | } |
| 295 | const flatbuf::FieldNode* node = nodes->Get(field_index); |
| 296 | |
| 297 | out->length = node->length(); |
| 298 | out->null_count = node->null_count(); |
| 299 | out->offset = 0; |
| 300 | return Status::OK(); |
| 301 | } |
| 302 | |
| 303 | Status LoadCommon(Type::type type_id, bool allow_validity_bitmap = true) { |
| 304 | DCHECK_NE(out_, nullptr); |