|
constexpr reference | operator[] (size_type pos) const noexcept |
| Access element at pos
|
|
constexpr reference | front () const noexcept |
| Access the first element.
|
|
constexpr reference | back () const noexcept |
| Access the last element.
|
|
constexpr pointer | data () const noexcept |
| Direct access to the underlying array.
|
|
constexpr iterator | begin () const noexcept |
| Returns an iterator to the beginning.
|
|
constexpr iterator | end () const noexcept |
| Returns an iterator to the end.
|
|
constexpr reverse_iterator | rbegin () const noexcept |
| Returns a reverse iterator to the beginning.
|
|
constexpr reverse_iterator | rend () const noexcept |
| Returns a reverse iterator to the end.
|
|
constexpr static_array_ref< Byte, detail::remove_cv_t< Byte >, N, Tag > | raw () const noexcept |
| Returns static_array_ref<Byte, Byte, N, Tag> .
|
|
constexpr std::size_t | strlen () const noexcept |
| Calculates string length from left to right.
|
|
constexpr std::size_t | strlen_r () const noexcept |
| Calculates string length from right to left.
|
|
template<typename T = void, typename = enable_if_writable_t<Byte, T>> |
constexpr iterator | assign_string (const char *str, const eos_null eos_mode=eos_null::all) const noexcept |
| Assigns null-terminated string.
|
|
template<typename R , typename = enable_if_t<!std::is_const<Byte>::value && is_range<R>::value>> |
constexpr iterator | assign_string (R &&r, const eos_null eos_mode=eos_null::all) const |
| Assigns string represented by a range.
|
|
template<typename R , typename = enable_if_t<!std::is_const<Byte>::value && is_range<R>::value>> |
constexpr iterator | assign_range (R &&r) const |
| Assigns range.
|
|
template<typename T = void, typename = enable_if_writable_t<Byte, T>> |
constexpr void | fill (const value_type value) const noexcept |
| Assigns value to all elements.
|
|
template<typename T = void, typename = enable_if_writable_t<Byte, T>> |
constexpr iterator | assign (size_type count, const value_type value) const noexcept |
| Assigns value to first count elements.
|
|
template<typename InputIt , typename = enable_if_writable_t<Byte, InputIt>> |
constexpr iterator | assign (InputIt first, InputIt last) const |
| Assigns elements from [first; last) range to first elements.
|
|
template<typename T = void, typename = enable_if_writable_t<Byte, T>> |
constexpr iterator | assign (std::initializer_list< value_type > ilist) const noexcept |
| Assigns initializer list to first elements.
|
|
| byte_range ()=default |
| Initializes to nullptr
|
|
constexpr | byte_range (Byte *begin, Byte *end) noexcept |
| Constructs from a pair of pointers.
|
|
constexpr | byte_range (Byte *ptr, const std::size_t size) noexcept |
| Constructs from pointer and size.
|
|
template<typename Byte2 , typename = enable_if_convertible_t<Byte2, Byte>> |
constexpr | byte_range (const byte_range< Byte2 > &other) noexcept |
| Copy constructor. Available if Byte2* is convertible to Byte*
|
|
template<typename Byte, typename Value, std::size_t N, typename Tag>
class sbepp::detail::static_array_ref< Byte, Value, N, Tag >
Represents reference to fixed-size array.
The general precondition for most functions is that current buffer should be able to hold all elements
- Template Parameters
-
Byte | byte type |
Value | array element type from schema |
N | array length |
Tag | type tag |