| 164 | } |
| 165 | |
| 166 | static Optional<ArrayDataAccess> Create(const ArrayData &data, int64_t length = 0, const pointer start = nullptr) |
| 167 | { |
| 168 | auto castData = data.cast<ArrayData>(); |
| 169 | if (castData) |
| 170 | { |
| 171 | return ArrayDataAccess{castData.value(), length, start}; |
| 172 | } |
| 173 | else |
| 174 | { |
| 175 | return NullOpt; |
| 176 | } |
| 177 | } |
| 178 | |
| 179 | private: |
| 180 | ArrayDataAccess(const ArrayData &data, int64_t length, const pointer start) |