HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
v1::jsonpath_slice Struct Reference

Public Member Functions

constexpr jsonpath_slice (jsonpath_slice const &) noexcept=default
constexpr jsonpath_slice (jsonpath_slice &&) noexcept=default
constexpr jsonpath_slice & operator= (jsonpath_slice const &) noexcept=default
constexpr jsonpath_slice & operator= (jsonpath_slice &&) noexcept=default
constexpr jsonpath_slice (ssize_t first, ssize_t last, ssize_t step) noexcept
std::size_t begin (std::size_t size) const noexcept
 Get the start offset.
std::size_t end (std::size_t size) const noexcept
 Get the one-step beyond last offset.
bool last_is_empty () const noexcept
std::string string () const noexcept
bool is_singular () const noexcept

Data Fields

ssize_t first
ssize_t last
ssize_t step

Member Function Documentation

◆ begin()

std::size_t v1::jsonpath_slice::begin ( std::size_t size) const
inlinenodiscardnoexcept

Get the start offset.

Parameters
sizeThe size of the container.
Returns
The start offset of the slice.

◆ end()

std::size_t v1::jsonpath_slice::end ( std::size_t size) const
inlinenodiscardnoexcept

Get the one-step beyond last offset.

This will calculate the last offset of an integer number of steps starting from begin(). This allows the end() to be equality compared inside a for loop, even when the step is negative.

Parameters
sizeThe size of the container.
Returns
The one-step beyond last offset of the slice.

The documentation for this struct was generated from the following file: