LLGL 0.05 Beta
Loading...
Searching...
No Matches
ForRange.h File Reference
#include <type_traits>

Namespaces

namespace  LLGL

Macros

#define for_range_end(INDEX)
#define for_subrange(INDEX, BEGIN, END)
#define for_range(INDEX, END)
#define for_subrange_reverse(INDEX, START, END)
#define for_range_reverse(INDEX, END)
#define for_range_reverse_iter(INDEX)

Macro Definition Documentation

◆ for_range

#define for_range ( INDEX,
END )
Value:
for_subrange(INDEX, 0, END)
#define for_subrange(INDEX, BEGIN, END)
Definition ForRange.h:20

◆ for_range_end

#define for_range_end ( INDEX)
Value:
( INDEX ## _End )

◆ for_range_reverse

#define for_range_reverse ( INDEX,
END )
Value:
for_subrange_reverse(INDEX, 0, END)
#define for_subrange_reverse(INDEX, START, END)
Definition ForRange.h:33

◆ for_range_reverse_iter

#define for_range_reverse_iter ( INDEX)
Value:
(INDEX ## _Iter)

◆ for_subrange

#define for_subrange ( INDEX,
BEGIN,
END )
Value:
for \
( \
typename LLGL::Utils::ForRangeTypeTraits<decltype(END)>::type INDEX ## _End = (END), INDEX = (BEGIN); \
INDEX < for_range_end(INDEX); \
++INDEX \
)
#define for_range_end(INDEX)
Definition ForRange.h:16

◆ for_subrange_reverse

#define for_subrange_reverse ( INDEX,
START,
END )
Value:
for \
( \
typename LLGL::Utils::ForRangeTypeTraits<decltype(END)>::type INDEX ## _End = (END), \
INDEX ## _Start = (START), \
INDEX ## _Iter = (INDEX ## _Start), \
INDEX; \
(INDEX = (INDEX ## _Start) + for_range_end(INDEX) - (INDEX ## _Iter) - 1), (INDEX ## _Iter) < for_range_end(INDEX); \
++(INDEX ## _Iter) \
)