ReactOS  r76032
XMLStorage::DocType Struct Reference

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
 

Detailed Description

XML document type description.

Definition at line 759 of file xmlstorage.h.

Member Function Documentation

bool XMLStorage::DocType::empty ( ) const
inline

Definition at line 770 of file xmlstorage.h.

770 {return _name.empty();}
std::string _name
Definition: xmlstorage.h:761
void XMLStorage::DocType::parse ( const char str)

Definition at line 698 of file xmlstorage.cpp.

Referenced by XMLStorage::XMLReaderBase::parse().

699 {
700  while(isspace((unsigned char)*p)) ++p;
701 
702  const char* start = p;
703  p = get_xmlsym_end_utf8(p);
704  _name.assign(start, p-start);
705 
706  while(isspace((unsigned char)*p)) ++p;
707 
708  start = p;
709  p = get_xmlsym_end_utf8(p);
710  std::string keyword(p, p-start); // "PUBLIC" or "SYSTEM"
711 
712  while(isspace((unsigned char)*p)) ++p;
713 
714  if (*p=='"' || *p=='\'') {
715  char delim = *p;
716 
717  start = ++p;
718  while(*p && *p!=delim) ++p;
719 
720  if (*p == delim)
721  _public.assign(start, p++-start);
722  } else
723  _public.erase();
724 
725  while(isspace((unsigned char)*p)) ++p;
726 
727  if (*p=='"' || *p=='\'') {
728  char delim = *p;
729 
730  start = ++p;
731  while(*p && *p!=delim) ++p;
732 
733  if (*p == delim)
734  _system.assign(start, p++-start);
735  } else
736  _system.erase();
737 }
#define isspace(c)
Definition: acclib.h:69
std::string _name
Definition: xmlstorage.h:761
LPCWSTR keyword
Definition: htmlbody.c:47
std::string _system
Definition: xmlstorage.h:765
const char * get_xmlsym_end_utf8(const char *p)
Definition: xmlstorage.cpp:682
char string[160]
Definition: util.h:11
std::string _public
Definition: xmlstorage.h:764
GLuint start
Definition: gl.h:1545
GLfloat GLfloat p
Definition: glext.h:8902

Member Data Documentation

std::string XMLStorage::DocType::_name

Definition at line 761 of file xmlstorage.h.

Referenced by empty().

std::string XMLStorage::DocType::_public

Definition at line 764 of file xmlstorage.h.

std::string XMLStorage::DocType::_system

Definition at line 765 of file xmlstorage.h.


The documentation for this struct was generated from the following files: