Mirror reflection library - Lagoon run-time layer 0.5.13
|
00001 00010 #ifndef LAGOON_RANGE_FIND_IF_1011291729_HPP 00011 #define LAGOON_RANGE_FIND_IF_1011291729_HPP 00012 00013 #include <lagoon/lagoon_fwd.hpp> 00014 00015 LAGOON_NAMESPACE_BEGIN 00016 00017 #ifdef MIRROR_DOCUMENTATION_ONLY 00018 00019 00028 template <class Range, typename Predicate> 00029 Range find_if(Range range, Predicate predicate); 00030 #else 00031 template <class Range, typename Predicate> 00032 Range find_if(Range range, Predicate predicate) 00033 { 00034 while(!range.empty()) 00035 { 00036 if(predicate(range.front())) break; 00037 else range.step_front(); 00038 } 00039 return range; 00040 } 00041 #endif 00042 00043 LAGOON_NAMESPACE_END 00044 00045 #endif //include guard 00046