class header::range#

class range#

Provides parsing for dealing with HTTP header ETag.

Public Functions

inline range(std::string unit, std::vector<subrange_t> subranges)#

Constructor.

inline auto unit() const noexcept -> const std::string&#

Get the unit.

inline auto size() const noexcept -> std::size_t#

Get the count of subranges.

inline auto at(std::size_t index) const noexcept -> const subrange_t&#

Get specific index of element from the underlying subrange array.

inline auto operator[](std::size_t index) const noexcept -> const subrange_t&#

Get specific index of element from the underlying subrange array.

inline auto begin()#

Get an iterator to the beginning of the underlying subrange array.

inline auto begin() const#

Get an iterator to the beginning of the underlying subrange array.

inline auto cbegin() const#

Get an iterator to the beginning of the underlying subrange array.

inline auto end()#

Get an iterator to the end of the underlying subrange array.

inline auto end() const#

Get an iterator to the end of the underlying subrange array.

inline auto cend() const#

Get an iterator to the end of the underlying subrange array.

Public Static Functions

static inline auto parse(std::string_view input, std::uint64_t total_length) noexcept -> optional<range>#

Parse the string to a range instance.

struct subrange_t#