8000 Added `deserializeMsgPack()` (issue #358) · java64/ArduinoJson@cb72384 · GitHub
[go: up one dir, main page]

Skip to content

Commit cb72384

Browse files
committed
Added deserializeMsgPack() (issue bblanchon#358)
1 parent 923d3e8 commit cb72384

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1311
-89
lines changed

.travis.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,6 @@ sudo: false
22
language: cpp
33
matrix:
44
include:
5-
- compiler: gcc
6-
addons:
7-
apt:
8-
sources: ['ubuntu-toolchain-r-test']
9-
packages: ['g++-4.4']
10-
env: SCRIPT=cmake GCC=4.4
115
- compiler: gcc
126
addons:
137
apt:

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ HEAD
1212
* Added `deserializeJson()`
1313
* Added `serializeJson()` and `serializeJsonPretty()`
1414
* Added `measureJson()` and `measureJsonPretty()`
15+
* Added `deserializeMsgPack()` (issue #358)
1516
* Removed `JsonBuffer::parseArray()`, `parseObject()` and `parse()`
1617
* Removed `JsonBuffer::createArray()` and `createObject()`
1718
* Removed `printTo()` and `prettyPrintTo()`

src/ArduinoJson.hpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@
77
#include "ArduinoJson/DynamicJsonArray.hpp"
88
#include "ArduinoJson/DynamicJsonObject.hpp"
99
#include "ArduinoJson/DynamicJsonVariant.hpp"
10+
#include "ArduinoJson/MsgPack/MsgPackDeserializer.hpp"
1011
#include "ArduinoJson/StaticJsonArray.hpp"
1112
#include "ArduinoJson/StaticJsonObject.hpp"
1213
#include "ArduinoJson/StaticJsonVariant.hpp"
1314
#include "ArduinoJson/deserializeJson.hpp"
15+
#include "ArduinoJson/deserializeMsgPack.hpp"
1416

15-
#include "ArduinoJson/Deserialization/JsonParserImpl.hpp"
17+
#include "ArduinoJson/Json/Deserialization/JsonParserImpl.hpp"
18+
#include "ArduinoJson/Json/Serialization/JsonSerializerImpl.hpp"
1619
#include "ArduinoJson/JsonArrayImpl.hpp"
1720
#include "ArduinoJson/JsonObjectImpl.hpp"
1821
#include "ArduinoJson/JsonVariantImpl.hpp"
19-
#include "ArduinoJson/Serialization/JsonSerializerImpl.hpp"

src/ArduinoJson/Configuration.hpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,3 +144,13 @@
144144
#if ARDUINOJSON_USE_LONG_LONG && ARDUINOJSON_USE_INT64
145145
#error ARDUINOJSON_USE_LONG_LONG and ARDUINOJSON_USE_INT64 cannot be set together
146146
#endif
147+
148+
#ifndef ARDUINOJSON_LITTLE_ENDIAN
149+
#if defined(_MSC_VER) || \
150+
(defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) || \
151+
(defined(__LITTLE_ENDIAN__))
152+
#define ARDUINOJSON_LITTLE_ENDIAN 1
153+
#else
154+
#define ARDUINOJSON_LITTLE_ENDIAN 0
155+
#endif
156+
#endif

src/ArduinoJson/Data/ValueSaver.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
#include "../JsonVariant.hpp"
88
#include "../Memory/JsonBuffer.hpp"
9-
#include "../StringTraits/StringTraits.hpp"
9+
#include "../Strings/StringTraits.hpp"
1010
#include "../TypeTraits/EnableIf.hpp"
1111

1212
namespace ArduinoJson {

src/ArduinoJson/Deserialization/JsonParser.hpp renamed to src/ArduinoJson/Json/Deserialization/JsonParser.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
#pragma once
66

7-
#include "../JsonError.hpp"
8-
#include "../JsonVariant.hpp"
9-
#include "../Memory/JsonBuffer.hpp"
10-
#include "../TypeTraits/IsConst.hpp"
11-
#include "StringWriter.hpp"
7+
#include "../../JsonError.hpp"
8+
#include "../../JsonVariant.hpp"
9+
#include "../../Memory/JsonBuffer.hpp"
10+
#include "../../Strings/StringWriter.hpp"
11+
#include "../../TypeTraits/IsConst.hpp"
1212

1313
namespace ArduinoJson {
1414
namespace Internals {

src/ArduinoJson/Deserialization/JsonParserImpl.hpp renamed to src/ArduinoJson/Json/Deserialization/JsonParserImpl.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
#pragma once
66

7-
#include "../Data/Encoding.hpp"
7+
#include "../Encoding.hpp"
88
#include "Comments.hpp"
99
#include "JsonParser.hpp"
1010

File renamed without changes.

src/ArduinoJson/Serialization/FloatParts.hpp renamed to src/ArduinoJson/Json/Serialization/FloatParts.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
#pragma once
66

7-
#include "../Configuration.hpp"
8-
#include "../Polyfills/math.hpp"
9-
#include "../TypeTraits/FloatTraits.hpp"
7+
#include "../../Configuration.hpp"
8+
#include "../../Polyfills/math.hpp"
9+
#include "../../TypeTraits/FloatTraits.hpp"
1010

1111
namespace ArduinoJson {
1212
namespace Internals {
@@ -85,5 +85,5 @@ struct FloatParts {
8585
return powersOf10;
8686
}
8787
};
88-
}
89-
}
88+
} // namespace Internals
89+
} // namespace ArduinoJson

src/ArduinoJson/Serialization/JsonSerializer.hpp renamed to src/ArduinoJson/Json/Serialization/JsonSerializer.hpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44

55
#pragma once
66

7-
#include "DummyPrint.hpp"
8-
#include "DynamicStringBuilder.hpp"
9-
#include "IndentedPrint.hpp"
10-
#include "JsonWriter.hpp"
11-
#include "Prettyfier.hpp"
12-
#include "StaticStringBuilder.hpp"
7+
#include "../../Print/DummyPrint.hpp"
8+
#include "../../Print/DynamicStringBuilder.hpp"
9+
#include "../../Print/StaticStringBuilder.hpp"
10+
#include "./IndentedPrint.hpp"
11+
#include "./JsonWriter.hpp"
12+
#include "./Prettyfier.hpp"
1313

1414
#if ARDUINOJSON_ENABLE_STD_STREAM
15-
#include "StreamPrintAdapter.hpp"
15+
#include "../../Print/StreamPrintAdapter.hpp"
1616
#endif
1717

1818
namespace ArduinoJson {

src/ArduinoJson/Serialization/JsonSerializerImpl.hpp renamed to src/ArduinoJson/Json/Serialization/JsonSerializerImpl.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44

55
#pragma once
66

7-
#include "../JsonArray.hpp"
8-
#include "../JsonArraySubscript.hpp"
9-
#include "../JsonObject.hpp"
10-
#include "../JsonObjectSubscript.hpp"
11-
#include "../JsonVariant.hpp"
7+
#include "../../JsonArray.hpp"
8+
#include "../../JsonArraySubscript.hpp"
9+
#include "../../JsonObject.hpp"
10+
#include "../../JsonObjectSubscript.hpp"
11+
#include "../../JsonVariant.hpp"
1212
#include "JsonSerializer.hpp"
1313

1414
template <typename Writer>

src/ArduinoJson/Serialization/JsonWriter.hpp renamed to src/ArduinoJson/Json/Serialization/JsonWriter.hpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
#pragma once
66

77
#include <stdint.h>
8-
#include "../Data/Encoding.hpp"
9-
#include "../Data/JsonInteger.hpp"
10-
#include "../Polyfills/attributes.hpp"
11-
#include "../Serialization/FloatParts.hpp"
8+
#include "../../Data/JsonInteger.hpp"
9+
#include "../../Polyfills/attributes.hpp"
10+
#include "../Encoding.hpp"
11+
#include "./FloatParts.hpp"
1212

1313
namespace ArduinoJson {
1414
namespace Internals {

src/ArduinoJson/JsonArray.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#include "Data/ValueSaver.hpp"
1010
#include "JsonVariant.hpp"
1111
#include "Memory/JsonBufferAllocated.hpp"
12-
#include "StringTraits/StringTraits.hpp"
12+
#include "Strings/StringTraits.hpp"
1313
#include "TypeTraits/EnableIf.hpp"
1414
#include "TypeTraits/IsArray.hpp"
1515
#include "TypeTraits/IsFloatingPoint.hpp"

src/ArduinoJson/JsonError.hpp

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,7 @@ class JsonError {
4242
}
4343

4444
const char* c_str() const {
45-
return to_string(_code);
46-
}
47-
48-
friend const char* to_string(const JsonError err) {
49-
return to_string(err._code);
50-
}
51-
52-
friend const char* to_string(JsonError::Code code) {
53-
switch (code) {
45+
switch (_code) {
5446
case Ok:
5547
return "Ok";
5648
case OpeningBraceExpected:
@@ -78,12 +70,7 @@ class JsonError {
7870

7971
#if ARDUINOJSON_ENABLE_STD_STREAM
8072
inline std::ostream& operator<<(std::ostream& s, const JsonError& e) {
81-
s << to_string(e);
82-
return s;
83-
}
84-
85-
inline std::ostream& operator<<(std::ostream& s, JsonError::Code e) {
86-
s << to_string(e);
73+
s << e.c_str();
8774
return s;
8875
}
8976
#endif

src/ArduinoJson/JsonObject.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#include "Data/ValueSaver.hpp"
1010
#include "JsonPair.hpp"
1111
#include "Memory/JsonBufferAllocated.hpp"
12-
#include "StringTraits/StringTraits.hpp"
12+
#include "Strings/StringTraits.hpp"
1313
#include "TypeTraits/EnableIf.hpp"
1414
#include "TypeTraits/IsArray.hpp"
1515
#include "TypeTraits/IsFloatingPoint.hpp"

src/ArduinoJson/JsonVariantComparisons.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
#pragma once
66

7-
#include "StringTraits/StringTraits.hpp"
7+
#include "Strings/StringTraits.hpp"
88
#include "TypeTraits/EnableIf.hpp"
99
#include "TypeTraits/IsVariant.hpp"
1010

@@ -134,5 +134,5 @@ class JsonVariantComparisons {
134134
return false;
135135
}
136136
};
137-
}
138-
}
137+
} // namespace Internals
138+
} // namespace ArduinoJson

src/ArduinoJson/JsonVariantImpl.hpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
#include "JsonArray.hpp"
99
#include "JsonObject.hpp"
1010
#include "JsonVariant.hpp"
11-
#include "Polyfills/isFloat.hpp"
12-
#include "Polyfills/isInteger.hpp"
13-
#include "Polyfills/parseFloat.hpp"
14-
#include "Polyfills/parseInteger.hpp"
11+
#include "Text/isFloat.hpp"
12+
#include "Text/isInteger.hpp"
13+
#include "Text/parseFloat.hpp"
14+
#include "Text/parseInteger.hpp"
1515

1616
#include <string.h> // for strcmp
1717

src/ArduinoJson/JsonVariantSubscripts.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
#include "Data/JsonVariantAs.hpp"
88
#include "Polyfills/attributes.hpp"
9-
#include "StringTraits/StringTraits.hpp"
9+
#include "Strings/StringTraits.hpp"
1010
#include "TypeTraits/EnableIf.hpp"
1111

1212
namespace ArduinoJson {
@@ -82,5 +82,5 @@ class JsonVariantSubscripts {
8282
return static_cast<const TImpl *>(this);
8383
}
8484
};
85-
}
86-
}
85+
} // namespace Internals
86+
} // namespace ArduinoJson

0 commit comments

Comments
 (0)
0