XML document type description. More...
#include <xmlstorage.h>
Public Member Functions | |
void | parse (const char *str) |
bool | empty () const |
Public Attributes | |
std::string | _name |
std::string | _public |
std::string | _system |
XML document type description.
Definition at line 987 of file xmlstorage.h.
bool XMLStorage::DocType::empty | ( | ) | const [inline] |
void XMLStorage::DocType::parse | ( | const char * | str ) |
Definition at line 764 of file xmlstorage.cpp.
Referenced by XMLStorage::ParseContext::process_next().
{ while(isspace((unsigned char)*p)) ++p; const char* start = p; p = get_xmlsym_end_utf8(p); _name.assign(start, p-start); while(isspace((unsigned char)*p)) ++p; start = p; p = get_xmlsym_end_utf8(p); // std::string keyword(p, p-start); // "PUBLIC" or "SYSTEM" while(isspace((unsigned char)*p)) ++p; if (*p=='"' || *p=='\'') { char delim = *p; start = ++p; while(*p && *p!=delim) ++p; if (*p == delim) _public.assign(start, p++-start); } else _public.erase(); while(isspace((unsigned char)*p)) ++p; if (*p=='"' || *p=='\'') { char delim = *p; start = ++p; while(*p && *p!=delim) ++p; if (*p == delim) _system.assign(start, p++-start); } else _system.erase(); }
std::string XMLStorage::DocType::_name |
Definition at line 989 of file xmlstorage.h.
Referenced by empty(), get_html_page(), and HTMLFormat::HTMLFormat().
std::string XMLStorage::DocType::_public |
Definition at line 992 of file xmlstorage.h.
std::string XMLStorage::DocType::_system |
Definition at line 993 of file xmlstorage.h.