27 lines
533 B
C++
27 lines
533 B
C++
#pragma once
|
|
|
|
#include "xmlelement.h"
|
|
|
|
class idXMLReader {
|
|
public:
|
|
explicit idXMLReader(const char* fileName);
|
|
~idXMLReader();
|
|
|
|
idXMLElement* ReadDocument();
|
|
bool IsLoaded() const { return document != nullptr; }
|
|
|
|
private:
|
|
idStr sourceName;
|
|
char* document;
|
|
const char* cursor;
|
|
const char* end;
|
|
|
|
void SkipWhitespace();
|
|
bool SkipMisc();
|
|
bool Consume(char character);
|
|
bool Consume(const char* text);
|
|
idStr ReadName();
|
|
idStr ReadQuotedValue();
|
|
idXMLElement* ReadElement_R();
|
|
};
|