17 #ifndef VCSN_DESIGN_PATTERN_ELEMENT_OPS_HH
18 # define VCSN_DESIGN_PATTERN_ELEMENT_OPS_HH
41 template<
typename S1,
typename T1,
typename S2,
typename T2>
43 bool operator<(const vcsn::Element<S1, T1>& e1,
47 template<
typename S1,
typename T1,
typename S2,
typename T2>
53 template<
typename S1,
typename T1,
typename S2,
typename T2>
55 bool operator<=(const vcsn::Element<S1, T1>& e1,
59 template<
typename S1,
typename T1,
typename S2,
typename T2>
65 template<
typename S,
typename T,
typename U>
67 bool operator <(const vcsn::Element<S, T>& e,
71 template<
typename S,
typename T,
typename U>
77 template<
typename S,
typename T,
typename U>
83 template<
typename S,
typename T,
typename U>
85 bool operator <=(const vcsn::Element<S, T>& e,
89 template<
typename U,
typename S,
typename T>
91 bool operator <(
const U& v,
95 template<
typename U,
typename S,
typename T>
97 bool operator >(
const U& v,
101 template<
typename U,
typename S,
typename T>
103 bool operator >=(
const U& v,
107 template<
typename U,
typename S,
typename T>
109 bool operator <=(
const U& v,
117 template<
typename S1,
typename T1,
typename S2,
typename T2>
123 template<
typename S,
typename T,
typename U>
129 template<
typename U,
typename S,
typename T>
131 bool operator ==(
const U& v,
139 template<
typename S1,
typename T1,
typename S2,
typename T2>
145 template<
typename S,
typename T,
typename U>
151 template<
typename U,
typename S,
typename T>
153 bool operator !=(
const U& v,
161 template<
typename S1,
typename T1,
typename S2,
typename T2>
168 template<
typename S,
typename T,
typename U>
174 template<
typename U,
typename S,
typename T>
184 template<
typename S1,
typename T1,
typename S2,
typename T2>
191 template<
typename S,
typename T,
typename U>
197 template<
typename U,
typename S,
typename T>
207 template<
typename S1,
typename T1,
typename S2,
typename T2>
214 template<
typename S,
typename T,
typename U>
220 template<
typename U,
typename S,
typename T>
230 template<
typename S1,
typename T1,
typename S2,
typename T2>
237 template<
typename S,
typename T,
typename U>
243 template<
typename U,
typename S,
typename T>
253 template<
typename S1,
typename T1,
typename S2,
typename T2>
260 template<
typename S,
typename T,
typename U>
266 template<
typename U,
typename S,
typename T>
276 template<
typename S,
typename T>
285 template<
typename St,
typename S,
typename T>
287 operator <<(St& s, const vcsn::Element<S, T>& e);
290 template<
typename St,
typename S,
typename T>
320 template<
typename S,
typename T1,
typename T2>
325 template<
typename S,
typename T>
329 template<
typename T,
typename S>
337 # if !defined VCSN_USE_INTERFACE_ONLY || defined VCSN_USE_LIB
338 # include <vaucanson/design_pattern/element_ops.hxx>
339 # endif // VCSN_USE_INTERFACE_ONLY
341 #endif // ! VCSN_DESIGN_PATTERN_ELEMENT_OPS_HH