IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
Loading...
Searching...
No Matches
ice::concepts::ContiguousContainer Concept Reference

#include <ice/container/container_concepts.hxx>

Concept definition

template<typename T>
concept ContiguousContainer = Container<T> && requires(T t) {
typename std::remove_reference_t<T>::Iterator;
typename std::remove_reference_t<T>::ReverseIterator;
typename std::remove_reference_t<T>::ConstIterator;
typename std::remove_reference_t<T>::ConstReverseIterator;
std::is_same_v<typename std::remove_reference_t<T>::ContainerTag, ContiguousContainerTag>;
{ t.data() } -> std::convertible_to<typename std::remove_reference_t<T>::ValueType const*>;
{ t.data_view() } -> std::convertible_to<ice::Data>;
}
Definition container_concepts.hxx:28
Definition container_concepts.hxx:59
Definition container_concepts.hxx:56