| 313 | class StructType : public DataType { |
| 314 | public: |
| 315 | explicit StructType(std::vector<FieldPtr> fields) |
| 316 | : DataType(TypeId::STRUCT), fields_(std::move(fields)) { |
| 317 | for (size_t i = 0; i < fields_.size(); ++i) { |
| 318 | name_to_index_[fields_[i]->name()] = static_cast<int>(i); |
| 319 | } |
| 320 | } |
| 321 | |
| 322 | std::string name() const override { return "struct"; } |
| 323 |