17 #ifndef AWALI_ALPHABETS_CHAR_HH
18 # define AWALI_ALPHABETS_CHAR_HH
24 #include <awali/common/json/node.cc>
41 static std::ostream&
jsname(std::ostream& o)
43 o <<
'"' <<
"Char" <<
'"';
47 virtual std::string
vname(
bool =
true)
const
164 static const std::string sep{
""};
207 template<
unsigned version = version::fsm_json>
222 template<
unsigned version = version::fsm_json>
238 template<
unsigned version = version::fsm_json>
248 if(s.empty() && allow_empty)
virtual std::string to_string() const
Coerces this node_t to an std::string.
Definition: node.hh:329
node_kind_t const kind
Definition: node.hh:194
helper for manipulations of char letters
Definition: char.hh:31
static letter_t parse_one_letter(const std::string &s, size_t &p)
Definition: char.hh:185
json::node_t * to_json() const
Definition: char.hh:223
static std::ostream & print(const letter_t &l, std::ostream &o)
Definition: char.hh:169
virtual std::string vname(bool=true) const
Definition: char.hh:47
char letter_t
Definition: char.hh:33
static bool is_letter(const letter_t &)
Definition: char.hh:144
static std::ostream & jsname(std::ostream &o)
Definition: char.hh:41
std::string word_t
Definition: char.hh:34
static constexpr letter_t special_letter()
The reserved letter used to forge the labels for initial and final transitions.
Definition: char.hh:161
static const std::string & separation_mark()
Definition: char.hh:163
static letter_t conv_one_letter(std::istream &i)
Definition: char.hh:192
static bool equals(const letter_t &l1, const letter_t &l2)
Definition: char.hh:132
json::string_t * letter_to_json(letter_t const &l) const
Definition: char.hh:208
static std::string format(const letter_t l)
Definition: char.hh:198
static std::string sname()
Definition: char.hh:36
static letter_t letter_from_json(json::node_t const *p, bool allow_empty=false)
Definition: char.hh:240
static letter_t transpose(letter_t l)
Definition: char.hh:126
static constexpr letter_t one_letter()
The reserved letter used to forge the "one" label (the unit, the identity).
Definition: char.hh:157
@ STRING
Definition: node.hh:94
std::string to_string(identities i)
std::ostream & str_escape(std::ostream &os, const int c)
Definition: escape.hh:30
Main namespace of Awali.
Definition: ato.hh:22
Exceptions thrown during parsing.
Definition: parse_exception.hh:26