Public Member Functions | Public Attributes

XMLStorage::HeaderlessXMLFormat Struct Reference

#include <xmlstorage.h>

Inheritance diagram for XMLStorage::HeaderlessXMLFormat:
Inheritance graph
[legend]
Collaboration diagram for XMLStorage::HeaderlessXMLFormat:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 HeaderlessXMLFormat (PRETTY_FLAGS pretty=PRETTY_INDENT)
void print_header (std::ostream &out, bool lf=true) const

Public Attributes

PRETTY_FLAGS _pretty
const char * _endl
std::string _version
std::string _encoding
bool _utf8_bom
bool _inhibit_header
DocType _doctype
StyleSheetList _stylesheets
int _standalone

Detailed Description

Definition at line 1055 of file xmlstorage.h.


Constructor & Destructor Documentation

XMLStorage::HeaderlessXMLFormat::HeaderlessXMLFormat ( PRETTY_FLAGS  pretty = PRETTY_INDENT ) [inline]

Definition at line 1057 of file xmlstorage.h.

References XMLStorage::XMLFormat::_inhibit_header.

     :  XMLFormat(pretty)
    {
        _inhibit_header = true;
    }

Member Function Documentation

void XMLStorage::XMLFormat::print_header ( std::ostream &  out,
bool  lf = true 
) const [inherited]

Definition at line 806 of file xmlstorage.cpp.

References _stricmp.

Referenced by XMLStorage::XMLDoc::write(), and XMLStorage::XMLWriter::XMLWriter().

{
    if (_inhibit_header)
        return;

    if (_utf8_bom) {
         // write UTF-8 signature at file start
        out.put('\xEF');
        out.put('\xBB');
        out.put('\xBF');
        assert(!_stricmp(_encoding.c_str(), "utf-8"));
    }

    out << "<?xml version=\"" << _version << "\" encoding=\"" << _encoding << "\"";

    if (_standalone != -1)
        out << " standalone=\"yes\"";

    out << "?>";

    if (lf)
        out << _endl;

    if (!_doctype.empty()) {
        out << "<!DOCTYPE " << _doctype._name;

        if (!_doctype._public.empty()) {
            out << " PUBLIC \"" << _doctype._public << '"';

            if (lf)
                out << _endl;

            out << " \"" << _doctype._system << '"';
        } else if (!_doctype._system.empty())
            out << " SYSTEM \"" << _doctype._system << '"';

        out << "?>";

        if (lf)
            out << _endl;
    }

    for(StyleSheetList::const_iterator it=_stylesheets.begin(); it!=_stylesheets.end(); ++it) {
        it->print(out);

        if (lf)
            out << _endl;
    }

/*  if (!_additional.empty()) {
        out << _additional;

        if (lf)
            out << _endl;
    } */
}

Here is the caller graph for this function:


Member Data Documentation

std::string XMLStorage::XMLFormat::_encoding [inherited]

Definition at line 1042 of file xmlstorage.h.

const char* XMLStorage::XMLFormat::_endl [inherited]

Definition at line 1044 of file xmlstorage.h.

Referenced by HeaderlessXMLFormat().

Definition at line 1038 of file xmlstorage.h.

Referenced by HTMLFormat::HTMLFormat().

Definition at line 1052 of file xmlstorage.h.

Definition at line 1048 of file xmlstorage.h.

Referenced by XMLStorage::ParseContext::process_next().

std::string XMLStorage::XMLFormat::_version [inherited]

Definition at line 1041 of file xmlstorage.h.


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