00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_ALGEBRA_CONCEPT_SEMIGROUP_BASE_HXX
00018 # define VCSN_ALGEBRA_CONCEPT_SEMIGROUP_BASE_HXX
00019
00020 # include <vaucanson/design_pattern/design_pattern.hh>
00021
00022 namespace vcsn {
00023
00024 namespace algebra {
00025
00026 template<class Self>
00027 SemigroupBase<Self>::SemigroupBase()
00028 {}
00029
00030 template<class Self>
00031 SemigroupBase<Self>::SemigroupBase(const SemigroupBase& other) :
00032 Structure<Self>(other)
00033 {}
00034
00035 }
00036
00037 template<class Self, typename T>
00038 MetaElement<algebra::SemigroupBase<Self>, T>::MetaElement()
00039 {}
00040
00041 template<class Self, typename T>
00042 MetaElement<algebra::SemigroupBase<Self>, T>::MetaElement(const MetaElement& other) :
00043 MetaElement<Structure<Self>, T>(other)
00044 {}
00045
00046 }
00047
00048 #endif // ! VCSN_ALGEBRA_CONCEPT_SEMIGROUP_BASE_HXX