9 #include <vcsn/dyn/registries.hh>
32 else if (format ==
"latex" || format ==
"utf8")
33 detail::print_expansion_registry().call(w, out, format);
34 else if (format ==
"text" || format ==
"default" || format ==
"")
39 const std::string format =
"text";
40 detail::print_expansion_registry().call(w, out, format);
43 raise(
"invalid output format for expansion: ",
str_escape(format));
58 else if (format ==
"null")
60 else if (format ==
"dot" || format ==
"latex" || format ==
"utf8")
61 detail::print_expression_registry().call(exp, out, format);
62 else if (format ==
"text" || format ==
"default" || format ==
"")
67 const std::string format =
"text";
68 detail::print_expression_registry().call(exp, out, format);
71 raise(
"invalid output format for expression: ",
str_escape(format));
87 else if (format ==
"latex" || format ==
"utf8")
88 detail::print_label_registry().call(w, out, format);
89 else if (format ==
"text" || format ==
"default" || format ==
"")
94 const std::string format =
"text";
95 detail::print_label_registry().call(w, out, format);
98 raise(
"invalid output format for label: ",
str_escape(format));
112 if (format ==
"list")
113 detail::list_polynomial_registry().call(p, out);
114 else if (format ==
"null")
116 else if (format ==
"latex" || format ==
"utf8")
117 detail::print_polynomial_registry().call(p, out, format);
118 else if (format ==
"text" || format ==
"default" || format ==
"")
123 const std::string format =
"text";
124 detail::print_polynomial_registry().call(p, out, format);
127 raise(
"invalid output format for polynomial: ",
str_escape(format));
141 if (format ==
"null")
143 else if (format ==
"latex" || format ==
"utf8")
144 detail::print_weight_registry().call(w, out, format);
145 else if (format ==
"text" || format ==
"default" || format ==
"")
150 const std::string format =
"text";
151 detail::print_weight_registry().call(w, out, format);
154 raise(
"invalid output format for weight: ",
str_escape(format));
std::ostream & print(const automaton &aut, std::ostream &out, const std::string &format="default")
Print automaton a on o using format format.
Allocate slots in std::ostreams.
xalloc< std::string * > format_flag
std::shared_ptr< const detail::polynomial_base > polynomial
std::ostream & print_polynomial(const polynomial &polynomial, std::ostream &o, const std::string &fmt)
Bridge (print).
std::ostream & operator<<(std::ostream &o, type_t t)
std::string get_format(std::ostream &o)
Get the output format for o.
void set_format(std::ostream &o, const std::string &format)
Specify the output format for o.
std::ostream & info(const automaton &aut, std::ostream &out, bool detailed=false)
Output various facts about an automaton.
std::shared_ptr< const detail::context_base > context
A dyn::context.
std::shared_ptr< const detail::weight_base > weight
std::ostream & list_polynomial(const polynomial &polynomial, std::ostream &o)
Bridge (list).
std::ostream & str_escape(std::ostream &os, const std::string &str, const char *special=nullptr)
Output a string, escaping special characters.
std::ostream & print_expression(const expression &exp, std::ostream &o, const std::string &fmt)
Bridge (print).
Declaration of vcsn::xalloc.
std::ostream & print_weight(const weight &weight, std::ostream &o, const std::string &fmt)
Bridge (print).
weightset_mixin< detail::r_impl > r
std::shared_ptr< const detail::label_base > label
std::shared_ptr< const detail::expansion_base > expansion
std::ostream & print_label(const label &label, std::ostream &o, const std::string &fmt)
Bridge (print).
std::ostream & print_expansion(const expansion &expansion, std::ostream &o, const std::string &fmt)
Bridge (print).
auto out(const Aut &aut, state_t_of< Aut > s)
Indexes of visible transitions leaving state s.
std::shared_ptr< detail::expression_base > expression
An input/output format for valuesets.