Functions | |
template<class S> | |
const char * | get_semiring_operations (const S &) |
template<class S, class T> | |
const char * | get_semiring_set (const S &, const T &) |
Tools to generate automaton labels from string, and to ensure type compatibility. | |
template<class S, class T, class U> | |
void | add_label (xercesc::DOMElement *, const Element< S, T > &, const U &) |
template<class M> | |
xercesc::DOMElement * | create_monoid (const M &monoid, xercesc::DOMDocument *doc, xercesc::DOMElement *elt) |
template<class A> | |
void | create_alphabet (const A &alphabet, xercesc::DOMDocument *doc, xercesc::DOMElement *root) |
template<class A, class S> | |
xercesc::DOMElement * | create_semiring (const A &aut, const S &semiring, xercesc::DOMDocument *doc, xercesc::DOMElement *elt) |
template<class T> | |
T::series_set_elt_t | get_series (xercesc::DOMElement *node, T &aut) |
Get series from a XML label node. | |
template<class U, class V> | |
void | insert_letter (Element< vcsn::algebra::AlphabetSet< U >, V > &a, const std::string &str) |
Insert a letter in an alphabet. | |
template<class U> | |
void | ensure_monoid_type (const xercesc::DOMElement *node, const U ¶m) |
Check monoid conformance of the automaton w.r.t. | |
template<class T, class U> | |
void | ensure_semiring_type (const xercesc::DOMElement *node, const T &a, const U ¶m) |
Check semiring conformance of the automaton w.r.t. | |
template<class OStream> | |
void | print_document (xercesc::DOMImplementationLS *impl, xercesc::DOMElement *node, OStream &os) |
Print XML tree to output stream. | |
template<class S, class U, class V> | |
const char * | get_semiring_set (const S &, const vcsn::rat::exp< U, V > &) |
GET_SEMIRING_OPERATIONS (vcsn::algebra::NumericalSemiring,"classical") GET_SEMIRING_OPERATIONS(vcsn | |
template<class S> | |
const char * | get_monoid_type (const vcsn::algebra::FreeMonoid< S > &) |
template<class S1, class S2> | |
const char * | get_monoid_type (const vcsn::algebra::FreeMonoidProduct< S1, S2 > &) |
xercesc::DOMElement * | create_element (xercesc::DOMDocument *doc, const std::string &e) |
void | set_attribute (xercesc::DOMElement *e, const std::string &k, const std::string &v) |
void | xset_attribute (xercesc::DOMElement *e, const std::string &k, const std::string &v) |
bool | has_attribute (const xercesc::DOMElement *e, const std::string &k) |
std::string | get_attribute (const xercesc::DOMElement *e, const std::string &k) |
template<class S, class T, class U> | |
void | add_xml_label (xercesc::DOMDocument *doc, xercesc::DOMElement *elt, const Element< S, T > &a, const U &series) |
template<class S, class T, class U, class M1, class M2> | |
void | add_label (xercesc::DOMElement *elt, const Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T > &, const U &series) |
template<class S, class T, class U, class M1, class M2> | |
void | add_xml_label (xercesc::DOMDocument *doc, xercesc::DOMElement *elt, const Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T > &a, const U &series) |
template<class S, class T, class U> | |
void | add_label (xercesc::DOMElement *elt, const Element< Transducer< S >, T > &, const U &series) |
template<class S, class T, class U> | |
void | add_xml_label (xercesc::DOMDocument *doc, xercesc::DOMElement *elt, const Element< Transducer< S >, T > &a, const U &series) |
template<class L> | |
const std::string | get_label (const L &l) |
const std::string | get_label (const bool &l) |
const std::string | get_label (const std::pair< std::string, std::string > &l) |
template<class S, class Series> | |
const std::string | get_label (const Element< Series, vcsn::algebra::polynom< S, bool > > &l) |
template<class S, class T> | |
xercesc::DOMElement * | create_semiring (const Element< Transducer< S >, T > &, const vcsn::algebra::NumericalSemiring &semiring, xercesc::DOMDocument *doc, xercesc::DOMElement *elt) |
template<class T> | |
void | get_weight_attribute (typename T::semiring_elt_value_t &weight, xercesc::DOMElement *element, const char *attribute_name) |
template<class T> | |
Element< typename T::series_set_t, rat::exp< typename T::monoid_elt_value_t, typename T::semiring_elt_value_t > > | weighted_krat_exp (Element< typename T::series_set_t, rat::exp< typename T::monoid_elt_value_t, typename T::semiring_elt_value_t > > &krat_exp, typename T::semiring_elt_value_t &weight, typename T::semiring_elt_value_t &rweight) |
template<class T> | |
Element< typename T::series_set_t, rat::exp< typename T::monoid_elt_value_t, typename T::semiring_elt_value_t > > | get_rec_xml_series (xercesc::DOMNode *n, T &aut) |
template<class S, class T, class M1, class M2> | |
Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T >::series_set_elt_t | get_series (xercesc::DOMElement *node, Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T > &a) |
template<class S, class T> | |
Element< Transducer< S >, T >::series_set_elt_t | get_series (xercesc::DOMElement *node, Element< Transducer< S >, T > &a) |
template<class S, class T, class E1, class E2, class R> | |
void | assoc_exp (Element< Transducer< S >, T > &a, E1 &i_exp, E2 &o_exp, R &res, bool i_res, bool o_res) |
template<class S, class T, class M1, class M2, class E1, class E2, class R> | |
void | assoc_exp (Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T > &a, E1 &i_exp, E2 &o_exp, R &res, bool i_res, bool o_res) |
template<class A, class A1, class A2, class S> | |
void | parse_label (xercesc::DOMElement *node, A &a, const A1 &alphabet1, const A2 &alphabet2, S &res) |
template<class V> | |
void | insert_letter (Element< vcsn::algebra::AlphabetSet< char >, V > &a, const std::string &str) |
void | check_consistency (const xercesc::DOMElement *node, const std::string &kind, const char *key, const std::string &deflt, const std::string &expected) |
Check that observed declarations match the expectations. | |
template<class S, class T> | |
void | ensure_semiring_type (const xercesc::DOMElement *node, const Element< Transducer< S >, T > &, const typename Element< Transducer< S >, T >::semiring_t::semiring_t ¶m) |
template<class S, class T, class U> | |
void | ensure_semiring_type (const xercesc::DOMElement *node, const Element< Transducer< S >, T > &, const typename Element< Transducer< S >, T >::semiring_t ¶m) |
template<class S, class T, class U, class M1, class M2> | |
void | ensure_monoid_type (const xercesc::DOMElement *node, const Element< Automata< vcsn::algebra::Series< S, vcsn::algebra::FreeMonoidProduct< M1, M2 > > >, T > ¶m) |
T::series_set_elt_t get_series | ( | xercesc::DOMElement * | node, | |
T & | aut | |||
) | [inline] |
Get series from a XML label node.
T
Type of the automaton.node | XML node. | |
aut | Automaton to store series. |
Definition at line 567 of file xml/tools.hxx.
References get_attribute(), get_rec_xml_series(), vcsn::algebra::parse(), and vcsn::xml::xml2str().
void insert_letter | ( | Element< vcsn::algebra::AlphabetSet< U >, V > & | a, | |
const std::string & | str | |||
) | [inline] |
Insert a letter in an alphabet.
U
Type of the letter. V
Type of the alphabet container.a | Alphabet to insert a letter. | |
str | string containing the letter. |
Definition at line 746 of file xml/tools.hxx.
void ensure_monoid_type | ( | const xercesc::DOMElement * | node, | |
const U & | param | |||
) | [inline] |
Check monoid conformance of the automaton w.r.t.
XML node.
U
Type of the monoid.node | XML node to check. | |
param | Automaton monoid. |
Definition at line 831 of file xml/tools.hxx.
References check_consistency().
void ensure_semiring_type | ( | const xercesc::DOMElement * | node, | |
const T & | a, | |||
const U & | param | |||
) | [inline] |
Check semiring conformance of the automaton w.r.t.
XML node.
U
Type of the semiring. T
Type of the automaton.node | XML node to check. | |
a | Automaton. | |
param | Automaton semiring. |
Definition at line 789 of file xml/tools.hxx.
References check_consistency(), and get_semiring_set().
void print_document | ( | xercesc::DOMImplementationLS * | impl, | |
xercesc::DOMElement * | node, | |||
OStream & | os | |||
) | [inline] |
Print XML tree to output stream.
OStream
Type of output stream.Definition at line 849 of file xml/tools.hxx.
Referenced by vcsn::operator<<(), and xml_converter::save().
void vcsn::xml::tools::check_consistency | ( | const xercesc::DOMElement * | node, | |
const std::string & | kind, | |||
const char * | key, | |||
const std::string & | deflt, | |||
const std::string & | expected | |||
) |
Check that observed declarations match the expectations.
node | to check | |
kind | user readable kind of entity to check, e.g. "monoid" | |
key | key used in the XML document, e.g., "type" | |
deflt | default value, e.g., "B" | |
expected | value given the rest of the XML document. |
Definition at line 770 of file xml/tools.hxx.
References get_attribute(), and has_attribute().
Referenced by ensure_monoid_type(), and ensure_semiring_type().