![]() |
zeep::http::tag_processor_v2 — version two of the tag_processor in libzeep
// In header: <zeep/http/tag-processor.hpp> class tag_processor_v2 : public { public: // types typedef xml::element *, xml::attribute *, scope &, basic_template_processor & ; // each handler returns a code telling the processor what to do with the node enum AttributeAction { none, remove, replace }; // construct/copy/destruct ( = ); // public static functions (); // public member functions (xml::node *, scope &, , basic_template_processor &); (, ); // protected member functions (xml::node *, scope &, , basic_template_processor &); (xml::text &, scope &); (xml::element *, scope &, , basic_template_processor &); xml::node > > (xml::element *, , basic_template_processor &, json::element &, scope &); xml::node > > (xml::element *, , basic_template_processor &, , , ); (xml::element *, xml::attribute *, scope &, , basic_template_processor &, ); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &, ); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &, , ); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &); (xml::element *, xml::attribute *, scope &, , basic_template_processor &, ); };
This is the new tag_processor. It is designed to look a bit like Thymeleaf (https://www.thymeleaf.org/) This processor works on attributes mostly, but can process inline el constructs as well.
The documentention contains a section describing all the xml tags and attributes this processor handles.
tag_processor_v2
public member functions(xml::node * node, scope & scope, dir, basic_template_processor & loader);process xml parses the XHTML and fills in the special tags and evaluates the el constructs
( attr, handler);It is possible to extend this processor with custom handlers.
tag_processor_v2
protected member functions(xml::node * node, scope & scope, dir, basic_template_processor & loader);
(xml::text & t, scope & scope);
(xml::element * e, scope & parentScope, dir, basic_template_processor & loader);
xml::node > > (xml::element * node, dir, basic_template_processor & loader, json::element & spec, scope & scope);
xml::node > > (xml::element * node, dir, basic_template_processor & loader, file, selector, byID);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader, unless);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader, escaped);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader, dest, prepend);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader);
(xml::element * node, xml::attribute * attr, scope & scope, dir, basic_template_processor & loader, tia);