8#ifndef BOOST_GIL_CONCEPTS_BASIC_HPP
9#define BOOST_GIL_CONCEPTS_BASIC_HPP
11#include <boost/config.hpp>
13#if defined(BOOST_CLANG)
14#pragma clang diagnostic push
15#pragma clang diagnostic ignored "-Wunknown-pragmas"
16#pragma clang diagnostic ignored "-Wunused-local-typedefs"
17#pragma clang diagnostic ignored "-Wuninitialized"
20#if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
21#pragma GCC diagnostic push
22#pragma GCC diagnostic ignored "-Wunused-local-typedefs"
23#pragma GCC diagnostic ignored "-Wuninitialized"
26#include <boost/gil/concepts/concept_check.hpp>
31namespace boost {
namespace gil {
47 function_requires<boost::DefaultConstructibleConcept<T>>();
66 function_requires<boost::CopyConstructibleConcept<T>>();
85 function_requires<boost::AssignableConcept<T>>();
104 function_requires<boost::EqualityComparableConcept<T>>();
145 gil_function_requires< boost::DefaultConstructibleConcept<T>>();
146 gil_function_requires< boost::CopyConstructibleConcept<T>>();
147 gil_function_requires< boost::EqualityComparableConcept<T>>();
148 gil_function_requires< boost::AssignableConcept<T>>();
149 gil_function_requires< Swappable<T>>();
167 using type =
typename T::type;
177template <
typename T,
typename U>
182 static_assert(std::is_same<T, U>::value,
"");
188#if defined(BOOST_CLANG)
189#pragma clang diagnostic pop
192#if defined(BOOST_GCC) && (BOOST_GCC >= 40900)
193#pragma GCC diagnostic pop
defined(BOOST_NO_CXX17_HDR_MEMORY_RESOURCE)
Definition algorithm.hpp:36
Concept of copy assignment requirement.
Definition basic.hpp:82
Concept of copy construction requirement.
Definition basic.hpp:63
Concept of default construction requirement.
Definition basic.hpp:44
Concept of == and != comparability requirement.
Definition basic.hpp:101
Concept for type regularity requirement.
Definition basic.hpp:142
Concept of types equivalence requirement.
Definition basic.hpp:179
Concept of swap operation requirement.
Definition basic.hpp:119