Vcsn  2.4
Be Rational
vcsn::detail::daut_impl< Aut > Class Template Reference

Format an automaton into Daut. More...

#include <daut.hh>

Inheritance diagram for vcsn::detail::daut_impl< Aut >:
Collaboration diagram for vcsn::detail::daut_impl< Aut >:

Public Member Functions

std::ostream & operator() ()
 Print the automaton on the stream. More...
 
- Public Member Functions inherited from vcsn::detail::printer< Aut >
 printer (const automaton_t &aut, std::ostream &out)
 

Private Types

using super_t = printer< Aut >
 
using automaton_t = Aut
 
using state_t = state_t_of< automaton_t >
 
using polynomial_t = typename polynomialset_t::value_t
 
using transition_t = transition_t_of< automaton_t >
 

Private Member Functions

void print_context_ ()
 
void print_transitions_ (const state_t src, const state_t dst, const polynomial_t &entry)
 Print the transitions between state src and state dst. More...
 
void print_transitions_ ()
 Print all the transitions, sorted by src state, then dst state. More...
 

Additional Inherited Members

- Public Types inherited from vcsn::detail::printer< Aut >
using state_t = state_t_of< automaton_t >
 
- Protected Types inherited from vcsn::detail::printer< Aut >
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 inherited from vcsn::detail::printer< Aut >
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 inherited from vcsn::detail::printer< Aut >
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_tws_ = *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_ = {}
 

Detailed Description

template<Automaton Aut>
class vcsn::detail::daut_impl< Aut >

Format an automaton into Daut.

Template Parameters
Autan automaton type.

Definition at line 22 of file daut.hh.

Member Typedef Documentation

template<Automaton Aut>
using vcsn::detail::printer< Aut >::automaton_t = Aut
private

Definition at line 40 of file printer.hh.

template<Automaton Aut>
using vcsn::detail::printer< Aut >::polynomial_t = typename polynomialset_t::value_t
private

Definition at line 59 of file printer.hh.

template<Automaton Aut>
using vcsn::detail::printer< Aut >::state_t = state_t_of<automaton_t>
private

Definition at line 50 of file printer.hh.

template<Automaton Aut>
using vcsn::detail::daut_impl< Aut >::super_t = printer<Aut>
private

Definition at line 25 of file daut.hh.

template<Automaton Aut>
using vcsn::detail::printer< Aut >::transition_t = transition_t_of<automaton_t>
private

Definition at line 55 of file printer.hh.

Member Function Documentation

template<Automaton Aut>
std::ostream& vcsn::detail::daut_impl< Aut >::operator() ( )
inline

Print the automaton on the stream.

Definition at line 40 of file daut.hh.

References vcsn::detail::printer< Aut >::os_, vcsn::detail::daut_impl< Aut >::print_context_(), and vcsn::detail::daut_impl< Aut >::print_transitions_().

Here is the call graph for this function:

template<Automaton Aut>
void vcsn::detail::daut_impl< Aut >::print_context_ ( )
inlineprivate
template<Automaton Aut>
void vcsn::detail::daut_impl< Aut >::print_transitions_ ( const state_t  src,
const state_t  dst,
const polynomial_t entry 
)
inlineprivate

Print the transitions between state src and state dst.

Definition at line 55 of file daut.hh.

References vcsn::detail::printer< Aut >::aut_, vcsn::detail::printer< Aut >::os_, vcsn::detail::printer< Aut >::ps_, and vcsn::to_string().

Here is the call graph for this function:

template<Automaton Aut>
void vcsn::detail::daut_impl< Aut >::print_transitions_ ( )
inlineprivate

Print all the transitions, sorted by src state, then dst state.

Definition at line 75 of file daut.hh.

References vcsn::detail::all_out(), vcsn::detail::printer< Aut >::aut_, and vcsn::detail::printer< Aut >::ps_.

Referenced by vcsn::detail::daut_impl< Aut >::operator()().

Here is the call graph for this function:


The documentation for this class was generated from the following file: