Skip to content
This repository was archived by the owner on Dec 10, 2022. It is now read-only.

Commit 8ac4d2c

Browse files
committed
refactor
1 parent 8db2f15 commit 8ac4d2c

File tree

3 files changed

+14
-37
lines changed

3 files changed

+14
-37
lines changed

zenload/parserImplASCII.cpp

+7-9
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,18 @@ bool ParserImplASCII::readChunkStart(ZenParser::ChunkHeader& header)
2121
m_pParser->skipSpaces();
2222

2323
// Early exit if this is a chunk-end or not a chunk header
24-
if(m_pParser->m_Data[m_pParser->m_Seek] != '[' || m_pParser->m_Data[m_pParser->m_Seek + 1] == ']')
25-
{
24+
if(m_pParser->m_Data[m_pParser->m_Seek] != '[' || m_pParser->m_Data[m_pParser->m_Seek + 1] == ']') {
2625
m_pParser->setSeek(seek);
2726
return false;
28-
}
27+
}
2928

3029
size_t tmpSeek = m_pParser->m_Seek;
31-
while (m_pParser->m_Data[tmpSeek] != ']')
32-
{
33-
if (m_pParser->m_Data[tmpSeek] == '\r' || m_pParser->m_Data[tmpSeek] == '\n')
34-
throw std::runtime_error("Invalid vob descriptor");
30+
while(m_pParser->m_Data[tmpSeek] != ']') {
31+
if(m_pParser->m_Data[tmpSeek] == '\r' || m_pParser->m_Data[tmpSeek] == '\n')
32+
throw std::runtime_error("Invalid vob descriptor");
3533

36-
++tmpSeek;
37-
}
34+
++tmpSeek;
35+
}
3836

3937
// Parse chunk-header
4038
char vobDescStk[256] = {};

zenload/zenParser.cpp

+7-23
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,6 @@
1616

1717
using namespace ZenLoad;
1818

19-
static void THROW(const char* msg) {
20-
#ifdef __ANDROID__
21-
LogError() << msg;
22-
#else
23-
throw std::runtime_error(msg);
24-
#endif
25-
}
26-
2719
/**
2820
* @brief reads a zen from a vdf
2921
*/
@@ -44,14 +36,6 @@ ZenParser::ZenParser(const uint8_t* data, size_t size) {
4436
ZenParser::~ZenParser() {
4537
}
4638

47-
/**
48-
* @brief returns whether the given string is a number
49-
*/
50-
bool ZenParser::isNumber(const std::string& expr)
51-
{
52-
return !expr.empty() && std::find_if(expr.begin(), expr.end(), [](unsigned char c) { return !std::isdigit(c); }) == expr.end();
53-
}
54-
5539
/**
5640
* @brief Reads the main ZEN-Header
5741
*/
@@ -77,10 +61,10 @@ void ZenParser::skipHeader()
7761
*/
7862
void ZenParser::readHeader(ZenHeader& header, ParserImpl*& impl) {
7963
if(!skipString("ZenGin Archive"))
80-
THROW("Not a valid format");
64+
throw std::runtime_error("Not a valid format");
8165

8266
if(!skipString("ver"))
83-
THROW("Not a valid header");
67+
throw std::runtime_error("Not a valid header");
8468

8569
// Version should be always 1...
8670
header.version = readIntASCII();
@@ -93,7 +77,7 @@ void ZenParser::readHeader(ZenHeader& header, ParserImpl*& impl) {
9377

9478
// Read string of the format "savegame b", where b is 0 or 1
9579
if(!skipString("saveGame"))
96-
THROW("Unsupported file format");
80+
throw std::runtime_error("Unsupported file format");
9781
header.saveGame = readBoolASCII();
9882

9983
// Read possible date
@@ -108,7 +92,7 @@ void ZenParser::readHeader(ZenHeader& header, ParserImpl*& impl) {
10892

10993
// Reached the end of the main header
11094
if(!skipString("END"))
111-
THROW("No END in header(1)");
95+
throw std::runtime_error("No END in header(1)");
11296

11397
// Continue with the implementationspecific header
11498
skipSpaces();
@@ -126,7 +110,7 @@ void ZenParser::readHeader(ZenHeader& header, ParserImpl*& impl) {
126110
impl = new ParserImplBinSafe(this);
127111
}
128112
else {
129-
THROW("Unsupported file format");
113+
throw std::runtime_error("Unsupported file format");
130114
}
131115

132116
impl->readImplHeader();
@@ -222,7 +206,7 @@ bool ZenParser::readBoolASCII()
222206
skipSpaces();
223207
bool retVal = false;
224208
if (m_Data[m_Seek] != '0' && m_Data[m_Seek] != '1')
225-
THROW("Value is not a bool"); else
209+
throw std::runtime_error("Value is not a bool"); else
226210
retVal = m_Data[m_Seek] == '0' ? false : true;
227211

228212
++m_Seek;
@@ -428,7 +412,7 @@ void ZenParser::readWorld(oCWorldData& info, FileVersion version) {
428412
readChunkStart(worldHeader);
429413

430414
if(worldHeader.classId!=ZenParser::zCWorld)
431-
THROW("Expected oCWorld:zCWorld-Chunk not found!");
415+
throw std::runtime_error("Expected oCWorld:zCWorld-Chunk not found!");
432416

433417
while(!readChunkEnd()) {
434418
ZenParser::ChunkHeader header;

zenload/zenParser.h

-5
Original file line numberDiff line numberDiff line change
@@ -233,11 +233,6 @@ class ZenParser
233233
int32_t readIntASCII();
234234
bool readBoolASCII();
235235

236-
/**
237-
* @brief returns whether the given string is a number
238-
*/
239-
bool isNumber(const std::string& expr);
240-
241236
/**
242237
* @brief returns the current implementatio
243238
*/

0 commit comments

Comments
 (0)