#ifndef TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_TAKE_WHILE_H_ #define TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_TAKE_WHILE_H_ #include "list_index.h" #include "list/operation/take.h" #include "utility/predicate.h" namespace tav { template < template class Predicate, typename List > using TakeWhile = Take< typename utility::predicate_assurance< utility::predicate_negator::template function, Length >::template assure< ListIndex< utility::predicate_negator::template function, List > >, List >; } #endif // TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_TAKE_WHILE_H_