00001 00010 #ifndef NUPLE_HXX 00011 #define NUPLE_HXX 00012 00013 #include"nuple.hh" 00014 #include"internal/nuple_util.hh" 00015 00016 namespace my_lib{ 00017 00018 template<typename TList> 00019 Nuple<typename TList::tail>& Nuple<TList>::operator<<(const val_type& t){ 00020 this->val = t; 00021 return *this; 00022 } 00023 00024 template<typename TList> 00025 template<unsigned N> 00026 typename type_list::GetType<TList, N>::type& Nuple<TList>::at(){ 00027 return internal::HelpGet<TList, N>::get(*this); 00028 } 00029 00031 template<typename TList> 00032 std::ostream& operator<< (std::ostream& o, const Nuple<TList>& u){ 00033 internal::PrintNuple<TList, type_list::LengthList<TList>::val>::print(o,u); 00034 return o; 00035 } 00036 00037 00038 00039 }//fin my_lib 00040 00041 #endif //NUPLE_HXX