Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkConceptChecking.h File Reference

Go to the source code of this file.

Namespaces

namespace  itk
namespace  itk::Concept
namespace  itk::Concept::Detail

Defines

#define ITK_CONCEPT_IMPLEMENTATION_STANDARD
#define itkConceptConstraintsMacro()
#define itkConceptMacro(name, concept)   enum { name = sizeof concept }

Functions

Concept requiring T to have
a default 
constructor (BOOST)*/template< typename T > struct DefaultConstructible
template<typename T>
void IgnoreUnusedVariable (T)
Concept requiring T to have operator=. (BOOST)*/template< typename T > struct Assignable
template<class T>
*Concept checks may require
that an expression be convertible
to bool *Passing the expression
to this function will enforce
this requirement *BOOST *void 
RequireBooleanExpression (const T &t)
Concept requiring T1 to be
convertible to 
T2 (BOOST)*/template< typename T1


Define Documentation

#define ITK_CONCEPT_IMPLEMENTATION_STANDARD
 

Choose a concept checking implementation based on compiler abilities.

Definition at line 36 of file itkConceptChecking.h.

 
#define itkConceptConstraintsMacro  ) 
 

Value:

template <void (Constraints::*)()> struct Enforcer {}; \
    typedef Enforcer<&Constraints::constraints> EnforcerInstantiation
Standard instantiation-time concept check. No run-time overhead introduced. This implementation is based on "Concept Checking: Binding Parametric Polymorphism in C++" by Jeremy Siek and Andrew Lumsdaine, University of Notre Dame.

Definition at line 53 of file itkConceptChecking.h.

#define itkConceptMacro name,
concept   )     enum { name = sizeof concept }
 

Definition at line 56 of file itkConceptChecking.h.


Function Documentation

Concept requiring T to have a copy itk::Concept::constructor BOOST   ) 
 

Definition at line 131 of file itkConceptChecking.h.

template<typename T>
void itk::Concept::Detail::IgnoreUnusedVariable  )  [inline]
 

Concept checks may require a variable to be declared but not used. This function can be called with the variable to prevent the compiler warning. (BOOST)

Definition at line 113 of file itkConceptChecking.h.

Referenced by itk::Concept::Convertible::Constraints::constraints(), and itk::Concept::Detail::RequireBooleanExpression().

Concept requiring T to have itk::Concept::operator=. BOOST   ) 
 

Definition at line 192 of file itkConceptChecking.h.

template<class T>
* Concept checks may require that an expression be convertible to bool* Passing the expression to this function will enforce this requirement* BOOST* void itk::Concept::Detail::RequireBooleanExpression const T &  t  ) 
 

Definition at line 121 of file itkConceptChecking.h.

References itk::Concept::Detail::IgnoreUnusedVariable().

Concept requiring T1 to be convertible to itk::Concept::T2 BOOST   ) 
 

Referenced by itk::Concept::Convertible::Constraints::constraints().


Generated at Sun Jul 9 18:46:14 2006 for ITK by doxygen 1.4.2 written by Dimitri van Heesch, © 1997-2000