24 constexpr explicit
HeaderView(const header_t* p) noexcept : p_{p} {}
27 : p_{
reinterpret_cast<const header_t*
>(p)} {}
29 constexpr explicit operator bool() const noexcept {
return p_ !=
nullptr; }
30 constexpr auto get() const noexcept -> const header_t* {
return p_; }
32 constexpr auto operator->() const noexcept -> const header_t* {
return p_; }
33 constexpr auto operator*() const noexcept -> const header_t& {
return *p_; }
35 constexpr auto copy() const noexcept -> header_t {
38 std::memcpy(&out, p_,
sizeof(header_t));