Visual Computing Library
Loading...
Searching...
No Matches
vcl::BitSetConcept Concept Reference

BitSetConcept is satisfied only if a class provides the member functions specified in this concept. These member functions allows to a list of bits encoded in a integral type. More...

#include <vclib/concepts/space/bit_set.h>

Concept definition

template<typename T>
concept vcl::BitSetConcept = requires (T&& obj) {
RemoveRef<T>();
RemoveRef<T>({uint(), uint()});
{ obj.size() } -> std::same_as<std::size_t>;
{ obj.at(uint()) } -> std::convertible_to<bool>;
{ obj[uint()] } -> std::convertible_to<bool>;
{ obj.all() } -> std::same_as<bool>;
{ obj.any() } -> std::same_as<bool>;
{ obj.none() } -> std::same_as<bool>;
{ obj == obj } -> std::same_as<bool>;
{ obj <=> obj } -> std::convertible_to<std::partial_ordering>;
requires IsConst<T> || requires {
{ obj.at(uint()) } -> BitProxyConcept;
{ obj[uint()] } -> BitProxyConcept;
obj.set();
obj.set(bool(), uint());
obj.reset();
obj.reset(uint());
obj.flip();
obj.flip(uint());
};
}
A class representing a line segment in n-dimensional space. The class is parameterized by a PointConc...
Definition segment.h:43
BitSetConcept is satisfied only if a class provides the member functions specified in this concept....
Definition bit_set.h:57

Detailed Description

BitSetConcept is satisfied only if a class provides the member functions specified in this concept. These member functions allows to a list of bits encoded in a integral type.