| 1356 | bool Value::isBool() const { return type_ == booleanValue; } |
| 1357 | |
| 1358 | bool Value::isInt() const { |
| 1359 | switch (type_) { |
| 1360 | case intValue: |
| 1361 | #if defined(JSON_HAS_INT64) |
| 1362 | return value_.int_ >= minInt && value_.int_ <= maxInt; |
| 1363 | #else |
| 1364 | return true; |
| 1365 | #endif |
| 1366 | case uintValue: |
| 1367 | return value_.uint_ <= UInt(maxInt); |
| 1368 | case realValue: |
| 1369 | return value_.real_ >= minInt && value_.real_ <= maxInt && |
| 1370 | IsIntegral(value_.real_); |
| 1371 | default: |
| 1372 | break; |
| 1373 | } |
| 1374 | return false; |
| 1375 | } |
| 1376 | |
| 1377 | bool Value::isUInt() const { |
| 1378 | switch (type_) { |