32 constexpr explicit
HeaderView(const header_t* p) noexcept : p_{p} {}
35 : p_{
reinterpret_cast<const header_t*
>(p)} {}
37 constexpr explicit operator bool() const noexcept {
return p_ !=
nullptr; }
38 constexpr auto get() const noexcept -> const header_t* {
return p_; }
40 constexpr auto operator->() const noexcept -> const header_t* {
return p_; }
41 constexpr auto operator*() const noexcept -> const header_t& {
return *p_; }
43 constexpr auto copy() const noexcept -> header_t {
46 std::memcpy(&out, p_,
sizeof(header_t));