00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef TOOL_VALUED_ITERATOR_HXX_
00023 # define TOOL_VALUED_ITERATOR_HXX_
00024
00025 # include "valued_iterator.hh"
00026
00027 namespace wpl
00028 {
00029
00030 namespace tool
00031 {
00032
00033 template <class B>
00034 valued_iterator<B>::~valued_iterator()
00035 {
00036 }
00037
00038 template <class B>
00039 const typename valued_iterator<B>::value_type&
00040 valued_iterator<B>::get() const
00041 {
00042 return value().get();
00043 }
00044
00045 template <class B>
00046 typename valued_iterator<B>::value_type&
00047 valued_iterator<B>::get()
00048 {
00049 return value().get();
00050 }
00051
00052 template <class B>
00053 const typename valued_iterator<B>::value_type*
00054 valued_iterator<B>::get_ptr() const
00055 {
00056 return value().get_ptr();
00057 }
00058
00059 template <class B>
00060 typename valued_iterator<B>::value_type*
00061 valued_iterator<B>::get_ptr()
00062 {
00063 return value().get_ptr();
00064 }
00065
00066 template <class B>
00067 const typename valued_iterator<B>::optional_value&
00068 valued_iterator<B>::value() const
00069 {
00070 return v_;
00071 }
00072 template <class B>
00073 typename valued_iterator<B>::optional_value&
00074 valued_iterator<B>::value()
00075 {
00076 return v_;
00077 }
00078
00079 }
00080
00081 }
00082
00083 #endif // ! TOOL_VALUED_ITERATOR_HXX_