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 
    }
Esempio n. 2
0
      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();
      }
Esempio n. 3
0
 static T cast(U u){
     POTHOS_STATIC_ASSERT(sizeof(T)==0);
     return * static_cast<T *>(NULL);
 }