# boost_concept_check.h File Reference

`#include <cstddef>`
`#include <bits/stl_iterator_base_types.h>`
`#include <utility>`

Include dependency graph for boost_concept_check.h:

Go to the source code of this file.

## Namespaces

namespace | __gnu_cxx

## Detailed Description

This is an internal header file, included by other library headers. You should not attempt to use it directly.

Definition in file boost_concept_check.h.

## Define Documentation

#define _GLIBCPP_CLASS_REQUIRES | ( | _type_var,
|  | _ns,
|  | _concept |  | ) |

Value:

    typedef void (_ns::_concept <_type_var>::* _func##_type_var##_concept)(); \
      template <_func##_type_var##_concept _Tp1> \
      struct _concept_checking##_type_var##_concept { }; \
      typedef _concept_checking##_type_var##_concept< \
        &_ns::_concept <_type_var>::__constraints> \
        _concept_checking_typedef##_type_var##_concept

Definition at line 41 of file boost_concept_check.h.

#define _GLIBCPP_CLASS_REQUIRES2 | ( | _type_var1,
|  | _type_var2,
|  | _ns,
|  | _concept |  | ) |

Value:

    typedef void (_ns::_concept <_type_var1,_type_var2>::* _func##_type_var1##_type_var2##_concept)(); \
      template <_func##_type_var1##_type_var2##_concept _Tp1> \
      struct _concept_checking##_type_var1##_type_var2##_concept { }; \
      typedef _concept_checking##_type_var1##_type_var2##_concept< \
        &_ns::_concept <_type_var1,_type_var2>::__constraints> \
        _concept_checking_typedef##_type_var1##_type_var2##_concept

Definition at line 49 of file boost_concept_check.h.

#define _GLIBCPP_CLASS_REQUIRES3 | ( | _type_var1,
|  | _type_var2,
|  | _type_var3,
|  | _ns,
|  | _concept |  | ) |

Value:

    typedef void (_ns::_concept <_type_var1,_type_var2,_type_var3>::* _func##_type_var1##_type_var2##_type_var3##_concept)(); \
      template <_func##_type_var1##_type_var2##_type_var3##_concept _Tp1> \
      struct _concept_checking##_type_var1##_type_var2##_type_var3##_concept { }; \
      typedef _concept_checking##_type_var1##_type_var2##_type_var3##_concept< \
        &_ns::_concept <_type_var1,_type_var2,_type_var3>::__constraints>  \
      _concept_checking_typedef##_type_var1##_type_var2##_type_var3##_concept

Definition at line 57 of file boost_concept_check.h.

#define _GLIBCPP_CLASS_REQUIRES4 | ( | _type_var1,
|  | _type_var2,
|  | _type_var3,
|  | _type_var4,
|  | _ns,
|  | _concept |  | ) |

Value:

    typedef void (_ns::_concept <_type_var1,_type_var2,_type_var3,_type_var4>::* _func##_type_var1##_type_var2##_type_var3##_type_var4##_concept)(); \
      template <_func##_type_var1##_type_var2##_type_var3##_type_var4##_concept _Tp1> \
      struct _concept_checking##_type_var1##_type_var2##_type_var3##_type_var4##_concept { }; \
      typedef _concept_checking##_type_var1##_type_var2##_type_var3##_type_var4##_concept< \
      &_ns::_concept <_type_var1,_type_var2,_type_var3,_type_var4>::__constraints> \
        _concept_checking_typedef##_type_var1##_type_var2##_type_var3##_type_var4##_concept

Definition at line 65 of file boost_concept_check.h.

#define _GLIBCPP_DEFINE_BINARY_OPERATOR_CONSTRAINT | ( | _OP,
|  | _NAME |  | ) |

Value:

    template <class _Ret, class _First, class _Second> \
      struct _NAME { \
        void __constraints() { (void)__constraints_(); } \
        _Ret __constraints_() {  \
          return __a _OP __b; \
        } \
        _First __a; \
        _Second __b; \
      }

Definition at line 252 of file boost_concept_check.h.

#define _GLIBCPP_DEFINE_BINARY_PREDICATE_OP_CONSTRAINT | ( | _OP,
|  | _NAME |  | ) |

Value:

    template <class _First, class _Second> \
      struct _NAME { \
        void __constraints() { (void)__constraints_(); } \
        bool __constraints_() {  \
          return  __a _OP __b; \
        } \
        _First __a; \
        _Second __b; \
      }

Definition at line 241 of file boost_concept_check.h.