Vcsn
2.4
Be Rational
|
Factor common bits in automaton formatting. More...
#include <printer.hh>
Public Types | |
using | state_t = state_t_of< automaton_t > |
Public Member Functions | |
printer (const automaton_t &aut, std::ostream &out) | |
Protected Types | |
using | automaton_t = Aut |
using | context_t = context_t_of< automaton_t > |
using | label_t = label_t_of< automaton_t > |
using | transition_t = transition_t_of< automaton_t > |
using | weightset_t = weightset_t_of< automaton_t > |
using | weight_t = weight_t_of< automaton_t > |
using | polynomialset_t = polynomialset< context_t > |
using | polynomial_t = typename polynomialset_t::value_t |
using | states_t = std::vector< state_t > |
A list of states. More... | |
using | is_transducer_t = std::integral_constant< bool, 2<=rank< labelset_t_of< automaton_t >>::value > |
Whether is a transducer (two-tape automaton) as opposed to an acceptor. More... | |
Protected Member Functions | |
virtual std::string | label_ (const label_t &l) const |
Convert a label to its representation. More... | |
virtual void | print_transition_ (transition_t t) const |
Output the transition t. More... | |
void | print_state_ (const state_t s) |
Output transitions, sorted lexicographically on (Label, Dest). More... | |
void | print_transitions_ () |
Output transitions, sorted lexicographically. More... | |
void | list_states_ (const states_t &ss) |
List names of states in ss, preceded by ' '. More... | |
states_t | initials_ () |
The list of initial states, sorted. More... | |
states_t | finals_ () |
The list of final states, sorted. More... | |
Protected Attributes | |
automaton_t | aut_ |
The automaton we have to output. More... | |
std::ostream & | os_ |
Output stream. More... | |
const labelset_t_of< automaton_t > & | ls_ = *aut_->labelset() |
Short-hand to the labelset. More... | |
const weightset_t & | ws_ = *aut_->weightset() |
Short-hand to the weightset. More... | |
const polynomialset_t | ps_ {aut_->context()} |
Short-hand to the polynomialset used to print the entries. More... | |
const is_transducer_t | is_transducer_ = {} |
Factor common bits in automaton formatting.
Aut | an automaton type. |
Definition at line 37 of file printer.hh.
|
protected |
Definition at line 40 of file printer.hh.
|
protected |
Definition at line 53 of file printer.hh.
|
protected |
Whether is a transducer (two-tape automaton) as opposed to an acceptor.
Definition at line 146 of file printer.hh.
|
protected |
Definition at line 54 of file printer.hh.
|
protected |
Definition at line 59 of file printer.hh.
|
protected |
Definition at line 58 of file printer.hh.
using vcsn::detail::printer< Aut >::state_t = state_t_of<automaton_t> |
Definition at line 50 of file printer.hh.
|
protected |
A list of states.
Definition at line 62 of file printer.hh.
|
protected |
Definition at line 55 of file printer.hh.
|
protected |
Definition at line 57 of file printer.hh.
|
protected |
Definition at line 56 of file printer.hh.
|
inline |
Definition at line 43 of file printer.hh.
|
inlineprotected |
The list of final states, sorted.
Definition at line 123 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, vcsn::detail::final_transitions(), vcsn::res, and vcsn::sort().
Referenced by vcsn::detail::fado_impl< Aut >::operator()(), vcsn::detail::grail_impl< Aut >::operator()(), and vcsn::detail::dot_impl< Aut >::print_states_().
|
inlineprotected |
The list of initial states, sorted.
Definition at line 113 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, vcsn::detail::initial_transitions(), vcsn::res, and vcsn::sort().
Referenced by vcsn::detail::fado_impl< Aut >::operator()(), vcsn::detail::grail_impl< Aut >::operator()(), and vcsn::detail::dot_impl< Aut >::print_states_().
|
inlineprotectedvirtual |
Convert a label to its representation.
Definition at line 66 of file printer.hh.
References vcsn::detail::printer< Aut >::ls_, and vcsn::to_string().
Referenced by vcsn::detail::printer< Aut >::print_transition_().
|
inlineprotected |
List names of states in ss, preceded by ' '.
Definition at line 103 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, and vcsn::detail::printer< Aut >::os_.
Referenced by vcsn::detail::fado_impl< Aut >::operator()().
|
inlineprotected |
Output transitions, sorted lexicographically on (Label, Dest).
Definition at line 81 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, vcsn::detail::printer< Aut >::os_, vcsn::detail::out(), vcsn::detail::printer< Aut >::print_transition_(), and vcsn::sort().
Referenced by vcsn::detail::printer< Aut >::print_transitions_(), and vcsn::detail::efsmer< Aut >::print_transitions_().
|
inlineprotectedvirtual |
Output the transition t.
Do not insert eol. "Src Label Dst".
Reimplemented in vcsn::detail::efsmer< Aut >, and vcsn::detail::fado_impl< Aut >.
Definition at line 73 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, vcsn::detail::printer< Aut >::label_(), and vcsn::detail::printer< Aut >::os_.
Referenced by vcsn::detail::printer< Aut >::print_state_().
|
inlineprotected |
Output transitions, sorted lexicographically.
"Src Label Dst\n".
Definition at line 96 of file printer.hh.
References vcsn::detail::printer< Aut >::aut_, and vcsn::detail::printer< Aut >::print_state_().
Referenced by vcsn::detail::fado_impl< Aut >::operator()(), and vcsn::detail::grail_impl< Aut >::operator()().
|
protected |
The automaton we have to output.
Definition at line 133 of file printer.hh.
Referenced by vcsn::detail::printer< Aut >::finals_(), vcsn::detail::printer< Aut >::initials_(), vcsn::detail::printer< Aut >::list_states_(), vcsn::detail::fado_impl< Aut >::operator()(), vcsn::detail::grail_impl< Aut >::operator()(), vcsn::detail::daut_impl< Aut >::print_context_(), vcsn::detail::dot_impl< Aut >::print_prologue_(), vcsn::detail::printer< Aut >::print_state_(), vcsn::detail::dot_impl< Aut >::print_state_(), vcsn::detail::tikzer< Aut >::print_states_(), vcsn::detail::dot_impl< Aut >::print_states_(), vcsn::detail::printer< Aut >::print_transition_(), vcsn::detail::fado_impl< Aut >::print_transition_(), vcsn::detail::efsmer< Aut >::print_transition_(), vcsn::detail::daut_impl< Aut >::print_transitions_(), vcsn::detail::printer< Aut >::print_transitions_(), vcsn::detail::tikzer< Aut >::print_transitions_(), vcsn::detail::efsmer< Aut >::print_transitions_(), and vcsn::detail::dot_impl< Aut >::print_transitions_().
|
protected |
Definition at line 147 of file printer.hh.
Referenced by vcsn::detail::fado_impl< Aut >::operator()(), vcsn::detail::efsmer< Aut >::operator()(), vcsn::detail::fado_impl< Aut >::print_transition_(), and vcsn::detail::efsmer< Aut >::print_transition_().
|
protected |
Short-hand to the labelset.
Definition at line 137 of file printer.hh.
Referenced by vcsn::detail::printer< Aut >::label_(), vcsn::detail::fado_impl< Aut >::print_label_(), and vcsn::detail::efsmer< Aut >::print_label_().
|
protected |
Output stream.
Definition at line 135 of file printer.hh.
Referenced by vcsn::detail::printer< Aut >::list_states_(), vcsn::detail::daut_impl< Aut >::operator()(), vcsn::detail::fado_impl< Aut >::operator()(), vcsn::detail::efsmer< Aut >::operator()(), vcsn::detail::tikzer< Aut >::operator()(), vcsn::detail::dot_impl< Aut >::operator()(), vcsn::detail::grail_impl< Aut >::operator()(), vcsn::detail::daut_impl< Aut >::print_context_(), vcsn::detail::tikzer< Aut >::print_finitial_(), vcsn::detail::fado_impl< Aut >::print_label_(), vcsn::detail::efsmer< Aut >::print_label_(), vcsn::detail::printer< Aut >::print_state_(), vcsn::detail::tikzer< Aut >::print_states_(), vcsn::detail::printer< Aut >::print_transition_(), vcsn::detail::fado_impl< Aut >::print_transition_(), vcsn::detail::efsmer< Aut >::print_transition_(), vcsn::detail::daut_impl< Aut >::print_transitions_(), vcsn::detail::tikzer< Aut >::print_transitions_(), and vcsn::detail::efsmer< Aut >::print_transitions_().
|
protected |
Short-hand to the polynomialset used to print the entries.
Definition at line 141 of file printer.hh.
Referenced by vcsn::detail::daut_impl< Aut >::print_transitions_(), vcsn::detail::tikzer< Aut >::print_transitions_(), and vcsn::detail::dot_impl< Aut >::print_transitions_().
|
protected |
Short-hand to the weightset.
Definition at line 139 of file printer.hh.
Referenced by vcsn::detail::efsmer< Aut >::arc_type_(), vcsn::detail::dot_impl< Aut >::print_(), vcsn::detail::tikzer< Aut >::print_finitial_(), vcsn::detail::efsmer< Aut >::print_transition_(), and vcsn::detail::efsmer< Aut >::print_transitions_().