17 #ifndef AWALI_ALPHABETS_PAIR_HH 
   18 # define AWALI_ALPHABETS_PAIR_HH 
   25 # include <functional> 
   26 #include <awali/common/json/node.cc> 
   34     template<
typename F, 
typename S>
 
   39       using letter_t = std::pair<first_letter_t, second_letter_t>;
 
   40       using word_t = std::vector<letter_t>;
 
   44          return "lap<"+F::sname()+
","+S::sname()+
">";
 
   47       static std::ostream& 
jsname(std::ostream& o)
 
   49         o << 
"\"Pair\", \"entryTypes\":[";
 
   55       virtual std::string 
vname(
bool = 
true)
 const 
   89         static const std::string 
c;
 
  106         std::string message=
"Tuple letter expected ] got .";
 
  111         typename S::letter_t y=S::parse_one_letter(s,p);
 
  117         typename F::letter_t x=F::parse_one_letter(s,p);
 
  132         typename F::letter_t x=F::conv_one_letter(i);
 
  136         typename S::letter_t y=S::conv_one_letter(i);
 
The semiring of complex numbers.
Definition: c.hh:44
 
helper for manipulations of pair letters
Definition: pair.hh:35
 
static const std::string & separation_mark()
Definition: pair.hh:88
 
static bool is_letter(const letter_t &)
Definition: pair.hh:75
 
static std::string sname()
Definition: pair.hh:42
 
virtual std::string vname(bool=true) const
Definition: pair.hh:55
 
static std::ostream & jsname(std::ostream &o)
Definition: pair.hh:47
 
typename S::letter_t second_letter_t
Definition: pair.hh:38
 
static letter_t parse_one_letter(const std::string &s, size_t &p)
Definition: pair.hh:105
 
static letter_t transpose(letter_t l)
Definition: pair.hh:61
 
static letter_t conv_one_letter(std::istream &i)
Definition: pair.hh:128
 
static letter_t one_letter()
The reserved letter used to forge the "one" label (the unit, the identity).
Definition: pair.hh:82
 
typename F::letter_t first_letter_t
Definition: pair.hh:37
 
static letter_t special_letter()
The reserved letter used to forge the labels for initial and final transitions.
Definition: pair.hh:86
 
static std::string format(const letter_t l)
Definition: pair.hh:144
 
static bool equals(const letter_t &l1, const letter_t &l2)
Definition: pair.hh:69
 
std::vector< letter_t > word_t
Definition: pair.hh:40
 
std::pair< first_letter_t, second_letter_t > letter_t
Definition: pair.hh:39
 
static std::ostream & print(const letter_t &l, std::ostream &o)
Definition: pair.hh:94
 
automaton_t transpose(automaton_t aut, options_t opts={})
Transposes aut or returns a transposed copy of aut.
 
std::ostream & print(const std::tuple< Args... > &args, std::ostream &o)
Definition: tuple.hh:254
 
void eat(std::istream &is, char c)
Check lookahead character and advance.
Definition: stream.hh:62
 
RatExpSet::ratexp_t equals(const RatExpSet &rs, const typename RatExpSet::ratexp_t &v)
Definition: equal_visit.hh:155
 
auto format(const ValueSet &vs, const typename ValueSet::value_t &v, Args &&... args) -> std::string
Format v via vs.print.
Definition: stream.hh:109
 
Main namespace of Awali.
Definition: ato.hh:22
 
Exceptions thrown during parsing.
Definition: parse_exception.hh:26