Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:38:20

0001 /*-----------------------------------------------------------------------------+
0002 Copyright (c) 2007-2009: Joachim Faulhaber
0003 +------------------------------------------------------------------------------+
0004 Copyright (c) 1999-2006: Cortex Software GmbH, Kantstrasse 57, Berlin
0005 +------------------------------------------------------------------------------+
0006    Distributed under the Boost Software License, Version 1.0.
0007       (See accompanying file LICENCE.txt or copy at
0008            http://www.boost.org/LICENSE_1_0.txt)
0009 +-----------------------------------------------------------------------------*/
0010 /*-----------------------------------------------------------------------------
0011     Macro definitions for some useful notations e.g. iteration headers
0012 -----------------------------------------------------------------------------*/
0013 #ifndef  BOOST_ICL_DETAIL_NOTATE_HPP_JOFA_990119
0014 #define  BOOST_ICL_DETAIL_NOTATE_HPP_JOFA_990119
0015 
0016 
0017 // Iterations over stl or stl-compatible containers:
0018 #define ICL_FORALL(type,iter,obj) for(type::iterator iter=(obj).begin(); (iter)!=(obj).end(); (iter)++)
0019 #define ICL_const_FORALL(type,iter,obj) for(type::const_iterator iter=(obj).begin(); !((iter)==(obj).end()); (iter)++)
0020 
0021 #define ICL_FORALL_THIS(iter) for(iterator iter=begin(); (iter)!=end(); (iter)++)
0022 #define ICL_const_FORALL_THIS(iter) for(const_iterator iter=this->begin(); (iter)!=this->end(); (iter)++)
0023 
0024 // Plain old array iteration (assuming member function VecT::size()!)
0025 #define ICL_FORALL_VEC(idx, vec) for(int idx=0; idx<vec.size(); idx++)
0026 
0027 namespace boost{namespace icl
0028 {
0029     const int UNDEFINED_INDEX = -1;
0030 }} // namespace icl boost
0031 
0032 
0033 #endif // BOOST_ICL_DETAIL_NOTATE_HPP_JOFA_990119
0034 
0035