15a83710eSEric Fiselier //===----------------------------------------------------------------------===// 25a83710eSEric Fiselier // 35a83710eSEric Fiselier // The LLVM Compiler Infrastructure 45a83710eSEric Fiselier // 55a83710eSEric Fiselier // This file is dual licensed under the MIT and the University of Illinois Open 65a83710eSEric Fiselier // Source Licenses. See LICENSE.TXT for details. 75a83710eSEric Fiselier // 85a83710eSEric Fiselier //===----------------------------------------------------------------------===// 95a83710eSEric Fiselier 105a83710eSEric Fiselier // <functional> 11*bc933768SStephan T. Lavavej // REQUIRES: c++98 || c++03 || c++11 || c++14 12*bc933768SStephan T. Lavavej // unary_function was removed in C++17 135a83710eSEric Fiselier 145a83710eSEric Fiselier // unary_function 155a83710eSEric Fiselier 165a83710eSEric Fiselier #include <functional> 175a83710eSEric Fiselier #include <type_traits> 185a83710eSEric Fiselier 195a83710eSEric Fiselier int main() 205a83710eSEric Fiselier { 215a83710eSEric Fiselier typedef std::unary_function<int, bool> uf; 225a83710eSEric Fiselier static_assert((std::is_same<uf::argument_type, int>::value), ""); 235a83710eSEric Fiselier static_assert((std::is_same<uf::result_type, bool>::value), ""); 245a83710eSEric Fiselier } 25