| 66 | |
| 67 | template <typename T> |
| 68 | inline std::enable_if_t<std::is_trivially_copyable_v<T>, T> SafeLoad(const T* unaligned) { |
| 69 | using Type = std::remove_const_t<T>; |
| 70 | arrow::internal::AlignedStorage<Type> raw_data; |
| 71 | std::memcpy(raw_data.get(), static_cast<const void*>(unaligned), sizeof(T)); |
| 72 | auto data = *raw_data.get(); |
| 73 | raw_data.destroy(); |
| 74 | return data; |
| 75 | } |
| 76 | |
| 77 | template <typename U, typename T> |
| 78 | inline std::enable_if_t<std::is_trivially_copyable_v<T> && |
no test coverage detected