| 177 | } |
| 178 | |
| 179 | std::string FormatFloat16Value(::std::string_view val) { |
| 180 | std::stringstream result; |
| 181 | // FromLittleEndian reads two bytes unconditionally; a truncated stat value |
| 182 | // may be shorter, so copy into a zero-padded buffer first. |
| 183 | std::array<uint8_t, 2> bytes{}; |
| 184 | std::memcpy(bytes.data(), val.data(), std::min(bytes.size(), val.size())); |
| 185 | auto float16 = ::arrow::util::Float16::FromLittleEndian(bytes.data()); |
| 186 | result << float16.ToFloat(); |
| 187 | return result.str(); |
| 188 | } |
| 189 | |
| 190 | } // namespace |
| 191 |
no test coverage detected