explicit transform_iterator(Iterator const& x) : super_t(x) { // Pro8 is a little too aggressive about instantiating the // body of this function. #if !POTHOS_WORKAROUND(__MWERKS__, POTHOS_TESTED_AT(0x3003)) // don't provide this constructor if UnaryFunc is a // function pointer type, since it will be 0. Too dangerous. POTHOS_STATIC_ASSERT(is_class<UnaryFunc>::value); #endif }
filter_iterator(Iterator x, Iterator end_ = Iterator()) : super_t(x), m_predicate(), m_end(end_) { // Pro8 is a little too aggressive about instantiating the // body of this function. #if !POTHOS_WORKAROUND(__MWERKS__, POTHOS_TESTED_AT(0x3003)) // Don't allow use of this constructor if Predicate is a // function pointer type, since it will be 0. POTHOS_STATIC_ASSERT(is_class<Predicate>::value); #endif satisfy_predicate(); }
static T cast(U u){ POTHOS_STATIC_ASSERT(sizeof(T)==0); return * static_cast<T *>(NULL); }