Template Struct is_valid_iterator#
Defined in File array.h
Inheritance Relationships#
Base Type#
public std::bool_constant< std::is_same_v< T, std::remove_cv_t< std::remove_reference_t< decltype(*std::declval< IterType >())> > >||std::is_base_of_v< T, std::remove_cv_t< std::remove_reference_t< decltype(*std::declval< IterType >())> > > >
Derived Type#
public tvm::ffi::is_valid_iterator< Optional< T >, IterType >
(Template Struct is_valid_iterator< Optional< T >, IterType >)
Struct Documentation#
-
template<typename T, typename IterType>
struct is_valid_iterator : public std::bool_constant<std::is_same_v<T, std::remove_cv_t<std::remove_reference_t<decltype(*std::declval<IterType>())>>> || std::is_base_of_v<T, std::remove_cv_t<std::remove_reference_t<decltype(*std::declval<IterType>())>>>># Helper struct for type-checking.
is_valid_iterator<T,IterType>::value will be true if IterType can be dereferenced into a type that can be stored in an Array<T>, and false otherwise.
Subclassed by tvm::ffi::is_valid_iterator< Optional< T >, IterType >