17 #ifndef VCSN_MISC_SUPPORT_HXX
18 # define VCSN_MISC_SUPPORT_HXX
22 # include <vaucanson/automata/concept/handlers.hh>
34 template <
class U,
class T>
35 Support<std::map<U, T> >::Support (
const Support& s)
40 template <
class U,
class T>
41 Support<std::map<U, T> >::Support (
const std::map<U, T>& m)
46 template <
class U,
class T>
48 Support<std::map<U, T> >::size ()
const
53 template <
class U,
class T>
54 typename Support<std::map<U, T> >::iterator
55 Support<std::map<U, T> >::find (
const U& k)
const
60 template <
class U,
class T>
62 Support<std::map<U, T> >::empty ()
const
67 template <
class U,
class T>
68 typename Support<std::map<U, T> >::iterator
69 Support<std::map<U, T> >::begin ()
const
71 return iterator (m_.begin ());
74 template <
class U,
class T>
75 typename Support<std::map<U, T> >::iterator
76 Support<std::map<U, T> >::end ()
const
78 return iterator (m_.end ());
81 template <
class U,
class T>
83 Support< std::map<U, T> >::back ()
const
85 return *max_element (begin (), end ());
90 Support<std::set<U> >::Support (
const Support& s)
96 Support<std::set<U> >::Support (
const std::set<U>& m)
103 Support<std::set<U> >::size ()
const
109 typename Support<std::set<U> >::iterator
110 Support<std::set<U> >::find (
const U& k)
const
117 Support<std::set<U> >::empty ()
const
123 typename Support<std::set<U> >::iterator
124 Support<std::set<U> >::begin ()
const
126 return iterator (m_.begin ());
130 typename Support<std::set<U> >::iterator
131 Support<std::set<U> >::end ()
const
133 return iterator (m_.end ());
138 Support< std::set<U> >::back ()
const
140 return *max_element (begin (), end ());
148 SupportIterator<C>::SupportIterator (map_iterator mp)
153 typename SupportIterator<C>::key_type
160 SupportIterator<C>& SupportIterator<C>::operator++ ()
167 SupportIterator<C> SupportIterator<C>::operator++ (
int)
169 SupportIterator<C> tmp = *
this;
183 SupportIterator<C>::operator== (
const SupportIterator& o)
const
185 return ! (*
this != o);
193 SupportIterator<std::set<U> >::SupportIterator (iterator mp)
198 typename SupportIterator<std::set<U> >::value_t
199 SupportIterator<std::set<U> >::operator* ()
const
205 SupportIterator<std::set<U> >&
206 SupportIterator<std::set<U> >::operator++ ()
213 SupportIterator<std::set<U> >
214 SupportIterator<std::set<U> >::operator++ (int)
216 SupportIterator<std::set<U> > tmp = *
this;
223 SupportIterator<std::set<U> >::operator!= (
const SupportIterator& o)
const
230 SupportIterator<std::set<U> >::operator== (
const SupportIterator& o)
const
232 return ! (*
this != o);
238 #endif // ! VCSN_MISC_SUPPORT_HXX