Initial
This commit is contained in:
197
http/HOLD/READER.CPP
Normal file
197
http/HOLD/READER.CPP
Normal file
@@ -0,0 +1,197 @@
|
||||
#include <http/reader.hpp>
|
||||
#include <http/scan.hpp>
|
||||
|
||||
Reader::Reader(void)
|
||||
{
|
||||
}
|
||||
|
||||
Reader::~Reader()
|
||||
{
|
||||
}
|
||||
|
||||
void Reader::read(PureViewOfFile &inView)
|
||||
{
|
||||
Scan::ScanSymbols scanSymbol;
|
||||
String workString;
|
||||
double workDouble;
|
||||
int strLength;
|
||||
|
||||
inView.rewind();
|
||||
while(TRUE)
|
||||
{
|
||||
if(!inView.read((int&)scanSymbol))break;
|
||||
switch(scanSymbol)
|
||||
{
|
||||
case Scan::leftangle1 :
|
||||
leftangle();
|
||||
break;
|
||||
case Scan::rightangle1 :
|
||||
rightangle();
|
||||
break;
|
||||
case Scan::forwardslash1 :
|
||||
forwardslash();
|
||||
break;
|
||||
case Scan::ampersand1 :
|
||||
ampersand();
|
||||
break;
|
||||
case Scan::semicolon1 :
|
||||
semicolon();
|
||||
break;
|
||||
case Scan::space1 :
|
||||
space();
|
||||
break;
|
||||
case Scan::colon1 :
|
||||
colon();
|
||||
break;
|
||||
case Scan::leftparen1 :
|
||||
leftparen();
|
||||
break;
|
||||
case Scan::rightparen1 :
|
||||
rightparen();
|
||||
break;
|
||||
case Scan::exclamation1 :
|
||||
exclamation();
|
||||
break;
|
||||
case Scan::minus1 :
|
||||
minus();
|
||||
break;
|
||||
case Scan::pound1 :
|
||||
pound();
|
||||
break;
|
||||
case Scan::equal1 :
|
||||
equal();
|
||||
break;
|
||||
case Scan::newline1 :
|
||||
newline();
|
||||
break;
|
||||
case Scan::endtext1 :
|
||||
endtext();
|
||||
break;
|
||||
case Scan::unknown1 :
|
||||
unknown();
|
||||
break;
|
||||
case Scan::literal1 :
|
||||
inView.read(strLength);
|
||||
workString.reserve(strLength+1);
|
||||
inView.read((LPSTR)workString,strLength);
|
||||
literal(workString);
|
||||
break;
|
||||
case Scan::name1 :
|
||||
inView.read(strLength);
|
||||
workString.reserve(strLength+1);
|
||||
inView.read((LPSTR)workString,strLength);
|
||||
name(workString);
|
||||
break;
|
||||
case Scan::numeral1 :
|
||||
inView.read(workDouble);
|
||||
numeral(workDouble);
|
||||
break;
|
||||
case Scan::stop1 :
|
||||
stop();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// virtuals
|
||||
|
||||
void Reader::leftangle(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::rightangle(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::forwardslash(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::ampersand(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::semicolon(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::space(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::colon(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::leftparen(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::rightparen(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::exclamation(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::minus(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::pound(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::equal(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::newline(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::endtext(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::unknown(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::numeral(double /*value*/)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::literal(const String &/*literal*/)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::name(const String &/*name*/)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
void Reader::stop(void)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user