| 1162 | } |
| 1163 | |
| 1164 | static Status is_valid_on_field(const std::shared_ptr<Field>& field) { |
| 1165 | switch (field->type()->id()) { |
| 1166 | case Type::INT8: |
| 1167 | case Type::INT16: |
| 1168 | case Type::INT32: |
| 1169 | case Type::INT64: |
| 1170 | case Type::UINT8: |
| 1171 | case Type::UINT16: |
| 1172 | case Type::UINT32: |
| 1173 | case Type::UINT64: |
| 1174 | case Type::DATE32: |
| 1175 | case Type::DATE64: |
| 1176 | case Type::TIME32: |
| 1177 | case Type::TIME64: |
| 1178 | case Type::TIMESTAMP: |
| 1179 | return Status::OK(); |
| 1180 | default: |
| 1181 | return Status::Invalid("Unsupported type for on-key ", field->name(), " : ", |
| 1182 | field->type()->ToString()); |
| 1183 | } |
| 1184 | } |
| 1185 | |
| 1186 | static Status is_valid_by_field(const std::shared_ptr<Field>& field) { |
| 1187 | switch (field->type()->id()) { |