@@ -163,11 +163,9 @@ bool Reader::readValue() {
163
163
switch (token.type_ ) {
164
164
case tokenObjectBegin:
165
165
successful = readObject (token);
166
- currentValue ().setOffsetLimit (current_ - begin_);
167
166
break ;
168
167
case tokenArrayBegin:
169
168
successful = readArray (token);
170
- currentValue ().setOffsetLimit (current_ - begin_);
171
169
break ;
172
170
case tokenNumber:
173
171
successful = decodeNumber (token);
@@ -179,24 +177,18 @@ bool Reader::readValue() {
179
177
{
180
178
Value v (true );
181
179
currentValue ().swapPayload (v);
182
- currentValue ().setOffsetStart (token.start_ - begin_);
183
- currentValue ().setOffsetLimit (token.end_ - begin_);
184
180
}
185
181
break ;
186
182
case tokenFalse:
187
183
{
188
184
Value v (false );
189
185
currentValue ().swapPayload (v);
190
- currentValue ().setOffsetStart (token.start_ - begin_);
191
- currentValue ().setOffsetLimit (token.end_ - begin_);
192
186
}
193
187
break ;
194
188
case tokenNull:
195
189
{
196
190
Value v;
197
191
currentValue ().swapPayload (v);
198
- currentValue ().setOffsetStart (token.start_ - begin_);
199
- currentValue ().setOffsetLimit (token.end_ - begin_);
200
192
}
201
193
break ;
202
194
case tokenArraySeparator:
@@ -206,14 +198,10 @@ bool Reader::readValue() {
206
198
current_--;
207
199
Value v;
208
200
currentValue ().swapPayload (v);
209
- currentValue ().setOffsetStart (current_ - begin_ - 1 );
210
- currentValue ().setOffsetLimit (current_ - begin_);
211
201
break ;
212
202
}
213
203
// Else, fall through...
214
204
default :
215
- currentValue ().setOffsetStart (token.start_ - begin_);
216
- currentValue ().setOffsetLimit (token.end_ - begin_);
217
205
return addError (" Syntax error: value, object or array expected." , token);
218
206
}
219
207
@@ -441,12 +429,11 @@ bool Reader::readString() {
441
429
return c == ' "' ;
442
430
}
443
431
444
- bool Reader::readObject (Token& tokenStart) {
432
+ bool Reader::readObject (Token& /* tokenStart*/ ) {
445
433
Token tokenName;
446
434
std::string name;
447
435
Value init (objectValue);
448
436
currentValue ().swapPayload (init);
449
- currentValue ().setOffsetStart (tokenStart.start_ - begin_);
450
437
while (readToken (tokenName)) {
451
438
bool initialTokenOk = true ;
452
439
while (tokenName.type_ == tokenComment && initialTokenOk)
@@ -497,10 +484,9 @@ bool Reader::readObject(Token& tokenStart) {
497
484
" Missing '}' or object member name" , tokenName, tokenObjectEnd);
498
485
}
499
486
500
- bool Reader::readArray (Token& tokenStart) {
487
+ bool Reader::readArray (Token& /* tokenStart*/ ) {
501
488
Value init (arrayValue);
502
489
currentValue ().swapPayload (init);
503
- currentValue ().setOffsetStart (tokenStart.start_ - begin_);
504
490
skipSpaces ();
505
491
if (*current_ == ' ]' ) // empty array
506
492
{
@@ -540,8 +526,6 @@ bool Reader::decodeNumber(Token& token) {
540
526
if (!decodeNumber (token, decoded))
541
527
return false ;
542
528
currentValue ().swapPayload (decoded);
543
- currentValue ().setOffsetStart (token.start_ - begin_);
544
- currentValue ().setOffsetLimit (token.end_ - begin_);
545
529
return true ;
546
530
}
547
531
@@ -590,8 +574,6 @@ bool Reader::decodeDouble(Token& token) {
590
574
if (!decodeDouble (token, decoded))
591
575
return false ;
592
576
currentValue ().swapPayload (decoded);
593
- currentValue ().setOffsetStart (token.start_ - begin_);
594
- currentValue ().setOffsetLimit (token.end_ - begin_);
595
577
return true ;
596
578
}
597
579
@@ -637,8 +619,6 @@ bool Reader::decodeString(Token& token) {
637
619
return false ;
638
620
Value decoded (decoded_string);
639
621
currentValue ().swapPayload (decoded);
640
- currentValue ().setOffsetStart (token.start_ - begin_);
641
- currentValue ().setOffsetLimit (token.end_ - begin_);
642
622
return true ;
643
623
}
644
624
@@ -850,20 +830,6 @@ std::string Reader::getFormattedErrorMessages() const {
850
830
return formattedMessage;
851
831
}
852
832
853
- std::vector<Reader::StructuredError> Reader::getStructuredErrors () const {
854
- std::vector<Reader::StructuredError> allErrors;
855
- for (Errors::const_iterator itError = errors_.begin ();
856
- itError != errors_.end ();
857
- ++itError) {
858
- const ErrorInfo& error = *itError;
859
- Reader::StructuredError structured;
860
- structured.offset_start = error.token_ .start_ - begin_;
861
- structured.offset_limit = error.token_ .end_ - begin_;
862
- structured.message = error.message_ ;
863
- allErrors.push_back (structured);
864
- }
865
- return allErrors;
866
- }
867
833
// Reader
868
834
// ///////////////////////
869
835
@@ -918,7 +884,6 @@ class OurReader {
918
884
Value& root,
919
885
bool collectComments = true );
920
886
std::string getFormattedErrorMessages () const ;
921
- std::vector<StructuredError> getStructuredErrors () const ;
922
887
923
888
private:
924
889
OurReader (OurReader const &); // no impl
@@ -1076,11 +1041,9 @@ bool OurReader::readValue() {
1076
1041
switch (token.type_ ) {
1077
1042
case tokenObjectBegin:
1078
1043
successful = readObject (token);
1079
- currentValue ().setOffsetLimit (current_ - begin_);
1080
1044
break ;
1081
1045
case tokenArrayBegin:
1082
1046
successful = readArray (token);
1083
- currentValue ().setOffsetLimit (current_ - begin_);
1084
1047
break ;
1085
1048
case tokenNumber:
1086
1049
successful = decodeNumber (token);
@@ -1092,24 +1055,18 @@ bool OurReader::readValue() {
1092
1055
{
1093
1056
Value v (true );
1094
1057
currentValue ().swapPayload (v);
1095
- currentValue ().setOffsetStart (token.start_ - begin_);
1096
- currentValue ().setOffsetLimit (token.end_ - begin_);
1097
1058
}
1098
1059
break ;
1099
1060
case tokenFalse:
1100
1061
{
1101
1062
Value v (false );
1102
1063
currentValue ().swapPayload (v);
1103
- currentValue ().setOffsetStart (token.start_ - begin_);
1104
- currentValue ().setOffsetLimit (token.end_ - begin_);
1105
1064
}
1106
1065
break ;
1107
1066
case tokenNull:
1108
1067
{
1109
1068
Value v;
1110
1069
currentValue ().swapPayload (v);
1111
- currentValue ().setOffsetStart (token.start_ - begin_);
1112
- currentValue ().setOffsetLimit (token.end_ - begin_);
1113
1070
}
1114
1071
break ;
1115
1072
case tokenArraySeparator:
@@ -1119,14 +1076,10 @@ bool OurReader::readValue() {
1119
1076
current_--;
1120
1077
Value v;
1121
1078
currentValue ().swapPayload (v);
1122
- currentValue ().setOffsetStart (current_ - begin_ - 1 );
1123
- currentValue ().setOffsetLimit (current_ - begin_);
1124
1079
break ;
1125
1080
}
1126
1081
// Else, fall through...
1127
1082
default :
1128
- currentValue ().setOffsetStart (token.start_ - begin_);
1129
- currentValue ().setOffsetLimit (token.end_ - begin_);
1130
1083
return addError (" Syntax error: value, object or array expected." , token);
1131
1084
}
1132
1085
@@ -1340,7 +1293,6 @@ bool OurReader::readObject(Token& tokenStart) {
1340
1293
std::string name;
1341
1294
Value init (objectValue);
1342
1295
currentValue ().swapPayload (init);
1343
- currentValue ().setOffsetStart (tokenStart.start_ - begin_);
1344
1296
while (readToken (tokenName)) {
1345
1297
bool initialTokenOk = true ;
1346
1298
while (tokenName.type_ == tokenComment && initialTokenOk)
@@ -1394,7 +1346,6 @@ bool OurReader::readObject(Token& tokenStart) {
1394
1346
bool OurReader::readArray (Token& tokenStart) {
1395
1347
Value init (arrayValue);
1396
1348
currentValue ().swapPayload (init);
1397
- currentValue ().setOffsetStart (tokenStart.start_ - begin_);
1398
1349
skipSpaces ();
1399
1350
if (*current_ == ' ]' ) // empty array
1400
1351
{
@@ -1434,8 +1385,6 @@ bool OurReader::decodeNumber(Token& token) {
1434
1385
if (!decodeNumber (token, decoded))
1435
1386
return false ;
1436
1387
currentValue ().swapPayload (decoded);
1437
- currentValue ().setOffsetStart (token.start_ - begin_);
1438
- currentValue ().setOffsetLimit (token.end_ - begin_);
1439
1388
return true ;
1440
1389
}
1441
1390
@@ -1484,8 +1433,6 @@ bool OurReader::decodeDouble(Token& token) {
1484
1433
if (!decodeDouble (token, decoded))
1485
1434
return false ;
1486
1435
currentValue ().swapPayload (decoded);
1487
- currentValue ().setOffsetStart (token.start_ - begin_);
1488
- currentValue ().setOffsetLimit (token.end_ - begin_);
1489
1436
return true ;
1490
1437
}
1491
1438
@@ -1531,8 +1478,6 @@ bool OurReader::decodeString(Token& token) {
1531
1478
return false ;
1532
1479
Value decoded (decoded_string);
1533
1480
currentValue ().swapPayload (decoded);
1534
- currentValue ().setOffsetStart (token.start_ - begin_);
1535
- currentValue ().setOffsetLimit (token.end_ - begin_);
1536
1481
return true ;
1537
1482
}
1538
1483
@@ -1739,21 +1684,6 @@ std::string OurReader::getFormattedErrorMessages() const {
1739
1684
return formattedMessage;
1740
1685
}
1741
1686
1742
- std::vector<OurReader::StructuredError> OurReader::getStructuredErrors () const {
1743
- std::vector<OurReader::StructuredError> allErrors;
1744
- for (Errors::const_iterator itError = errors_.begin ();
1745
- itError != errors_.end ();
1746
- ++itError) {
1747
- const ErrorInfo& error = *itError;
1748
- OurReader::StructuredError structured;
1749
- structured.offset_start = error.token_ .start_ - begin_;
1750
- structured.offset_limit = error.token_ .end_ - begin_;
1751
- structured.message = error.message_ ;
1752
- allErrors.push_back (structured);
1753
- }
1754
- return allErrors;
1755
- }
1756
-
1757
1687
1758
1688
class OurCharReader : public CharReader {
1759
1689
bool const collectComments_;
0 commit comments