1 // 2 // gettable_socket_option.hpp 3 // ~~~~~~~~~~~~~~~~~~~~~~~~~~ 4 // 5 // Copyright (c) 2003-2015 Christopher M. Kohlhoff (chris at kohlhoff dot com) 6 // 7 // Distributed under the Boost Software License, Version 1.0. (See accompanying 8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 9 // 10 11 #ifndef ARCHETYPES_GETTABLE_SOCKET_OPTION_HPP 12 #define ARCHETYPES_GETTABLE_SOCKET_OPTION_HPP 13 14 #include <cstddef> 15 16 namespace archetypes { 17 18 template <typename PointerType> 19 class gettable_socket_option 20 { 21 public: 22 template <typename Protocol> level(const Protocol &) const23 int level(const Protocol&) const 24 { 25 return 0; 26 } 27 28 template <typename Protocol> name(const Protocol &) const29 int name(const Protocol&) const 30 { 31 return 0; 32 } 33 34 template <typename Protocol> data(const Protocol &)35 PointerType* data(const Protocol&) 36 { 37 return 0; 38 } 39 40 template <typename Protocol> size(const Protocol &) const41 std::size_t size(const Protocol&) const 42 { 43 return 0; 44 } 45 46 template <typename Protocol> resize(const Protocol &,std::size_t)47 void resize(const Protocol&, std::size_t) 48 { 49 } 50 }; 51 52 } // namespace archetypes 53 54 #endif // ARCHETYPES_GETTABLE_SOCKET_OPTION_HPP 55