aboutsummaryrefslogtreecommitdiffstats
path: root/include/json.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/json.h')
-rw-r--r--include/json.h32
1 files changed, 24 insertions, 8 deletions
diff --git a/include/json.h b/include/json.h
index 3fc0911..68f06a2 100644
--- a/include/json.h
+++ b/include/json.h
@@ -833,9 +833,9 @@ namespace crow
return {};*/
break;
case '.':
- state = (NumberParsingState)"\7\7\7\4\7\7\7"[state];
+ state = (NumberParsingState)"\7\7\4\4\7\7\7"[state];
/*
- if (state == NumberParsingState::Digits)
+ if (state == NumberParsingState::Digits || state == NumberParsingState::ZeroFirst)
{
state = NumberParsingState::DigitsAfterPoints;
}
@@ -1143,7 +1143,7 @@ namespace crow
return *this;
}
- wvalue& operator = (uint16_t value)
+ wvalue& operator = (unsigned short value)
{
reset();
t_ = type::Number;
@@ -1151,7 +1151,7 @@ namespace crow
return *this;
}
- wvalue& operator = (int16_t value)
+ wvalue& operator = (short value)
{
reset();
t_ = type::Number;
@@ -1159,7 +1159,7 @@ namespace crow
return *this;
}
- wvalue& operator = (uint32_t value)
+ wvalue& operator = (long long value)
{
reset();
t_ = type::Number;
@@ -1167,7 +1167,7 @@ namespace crow
return *this;
}
- wvalue& operator = (int32_t value)
+ wvalue& operator = (long value)
{
reset();
t_ = type::Number;
@@ -1175,7 +1175,7 @@ namespace crow
return *this;
}
- wvalue& operator = (uint64_t value)
+ wvalue& operator = (int value)
{
reset();
t_ = type::Number;
@@ -1183,7 +1183,23 @@ namespace crow
return *this;
}
- wvalue& operator = (int64_t value)
+ wvalue& operator = (unsigned long long value)
+ {
+ reset();
+ t_ = type::Number;
+ d = (double)value;
+ return *this;
+ }
+
+ wvalue& operator = (unsigned long value)
+ {
+ reset();
+ t_ = type::Number;
+ d = (double)value;
+ return *this;
+ }
+
+ wvalue& operator = (unsigned int value)
{
reset();
t_ = type::Number;