Vcsn  2.0
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
lan_char_b.hh
Go to the documentation of this file.
1 #ifndef VCSN_CTX_LAN_CHAR_B_HH
2 # define VCSN_CTX_LAN_CHAR_B_HH
3 
4 # include <vcsn/ctx/context.hh>
5 # include <vcsn/ctx/lan_char.hh>
6 # include <vcsn/weightset/b.hh>
7 
8 namespace vcsn
9 {
10  namespace ctx
11  {
13  }
14 }
15 
16 # include <vcsn/ctx/instantiate.hh>
17 # include <vcsn/algos/grail.hh>
18 
19 namespace vcsn
20 {
22 # if 0
23  /* fado. */
24  MAYBE_EXTERN template
25  std::ostream& fado<mutable_automaton<ctx::lan_char_b>>
26  (const mutable_automaton<ctx::lan_char_b>& aut, std::ostream& out);
27 
28  MAYBE_EXTERN template
29  std::ostream&
30  fado<vcsn::detail::transpose_automaton<mutable_automaton<ctx::lan_char_b>>>
31  (const vcsn::detail::transpose_automaton<mutable_automaton<ctx::lan_char_b>>& aut,
32  std::ostream& out);
33 
34  /* grail. */
35  MAYBE_EXTERN template
36  std::ostream& grail<mutable_automaton<ctx::lan_char_b>>
37  (const mutable_automaton<ctx::lan_char_b>& aut, std::ostream& out);
38 
39  MAYBE_EXTERN template
40  std::ostream&
41  grail<vcsn::detail::transpose_automaton<mutable_automaton<ctx::lan_char_b>>>
42  (const vcsn::detail::transpose_automaton<mutable_automaton<ctx::lan_char_b>>& aut,
43  std::ostream& out);
44 # endif
45 
46 # if VCSN_INSTANTIATION
47  namespace
48  {
49  namespace detail
50  {
51  template <typename Ctx>
52  bool
54  {
55  using aut_t = mutable_automaton<Ctx>;
56  using namespace dyn::detail;
57 
58 #define REGISTER(Algo, ...) \
59  Algo ## _register(ssignature<__VA_ARGS__>(), Algo<__VA_ARGS__>)
60 
61  REGISTER(fado, aut_t, std::ostream);
62  REGISTER(grail, aut_t, std::ostream);
63 # undef REGISTER
64  return true;
65  }
66 
67  static bool register_lan_char_b = register_functions<ctx::lan_char_b>();
68  }
69  }
70 #endif
71 }
72 
73 #endif // !VCSN_CTX_LAN_CHAR_B_HH
#define MAYBE_EXTERN
Definition: instantiate.hh:388
context< lan_char, vcsn::b > lan_char_b
Definition: lan_char_b.hh:12
std::ostream & grail(const Aut &aut, std::ostream &out)
Definition: grail.hh:313
VCSN_CTX_INSTANTIATE(ctx::lal_char_b)
#define REGISTER(Algo,...)
Definition: instantiate.hh:139
std::ostream & fado(const Aut &aut, std::ostream &out)
Definition: grail.hh:223
bool register_functions()
Definition: instantiate.hh:267