Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 14 additions & 2 deletions include/bitcoin/database/impl/memory/accessor.ipp
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,25 @@ inline ptrdiff_t CLASS::size() const NOEXCEPT
}

TEMPLATE
inline uint8_t* CLASS::begin() NOEXCEPT
inline uint8_t* CLASS::data() const NOEXCEPT
{
return begin();
}

TEMPLATE
inline CLASS::operator system::data_slab() const NOEXCEPT
{
return { begin(), end() };
};

TEMPLATE
inline uint8_t* CLASS::begin() const NOEXCEPT
{
return begin_;
}

TEMPLATE
inline uint8_t* CLASS::end() NOEXCEPT
inline uint8_t* CLASS::end() const NOEXCEPT
{
return end_;
}
Expand Down
11 changes: 6 additions & 5 deletions include/bitcoin/database/memory/accessor.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,13 @@ class accessor
/// The logical buffer size (from begin to end).
inline ptrdiff_t size() const NOEXCEPT override;

/// Get logical buffer (guarded against remap only).
inline uint8_t* begin() NOEXCEPT override;
inline uint8_t* end() NOEXCEPT override;

/// Alias for begin.
inline uint8_t* data() NOEXCEPT override { return begin(); }
inline uint8_t* data() const NOEXCEPT override;

/// Get logical buffer (guarded against remap only).
inline operator system::data_slab() const NOEXCEPT override;
inline uint8_t* begin() const NOEXCEPT override;
inline uint8_t* end() const NOEXCEPT override;

private:
uint8_t* begin_{};
Expand Down
11 changes: 6 additions & 5 deletions include/bitcoin/database/memory/interfaces/memory.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,13 @@ class memory
/// The logical buffer size (from begin to end).
virtual ptrdiff_t size() const NOEXCEPT = 0;

/// Get logical buffer.
virtual uint8_t* begin() NOEXCEPT = 0;
virtual uint8_t* end() NOEXCEPT = 0;

/// Alias begin.
virtual uint8_t* data() NOEXCEPT = 0;
virtual uint8_t* data() const NOEXCEPT = 0;

/// Get logical buffer.
virtual operator system::data_slab() const NOEXCEPT = 0;
virtual uint8_t* begin() const NOEXCEPT = 0;
virtual uint8_t* end() const NOEXCEPT = 0;
};

typedef memory::ptr memory_ptr;
Expand Down
Loading