00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 #ifndef VCSN_ALGEBRA_CONCEPT_LETTER_HH
00019 # define VCSN_ALGEBRA_CONCEPT_LETTER_HH
00020 
00021 # include <string>
00022 
00023 # include <vaucanson/misc/static.hh>
00024 
00025 namespace vcsn {
00026 
00027   namespace algebra {
00028 
00029     template <class L>
00030     struct letter_traits
00031     {
00032       
00033       enum
00034         {
00035           cardinal = misc::static_pow<2, sizeof(L) * 8>::value
00036         };
00037 
00040 
00043       static L literal_to_letter(const std::string&)
00044       {
00045         return 0;
00046       }
00047 
00049       static std::string letter_to_literal(const L&)
00050       {
00051         return 0;
00052       }
00053 
00055       static char default_epsilon()
00056       {
00057         return '1';
00058       }
00059     };
00060 
00061   } 
00062 
00063 } 
00064 
00065 #endif // ! VCSN_ALGEBRA_CONCEPT_LETTER_HH