diff options
author | Daniel Friesel <daniel.friesel@uos.de> | 2020-09-07 12:57:22 +0200 |
---|---|---|
committer | Daniel Friesel <daniel.friesel@uos.de> | 2020-09-07 12:57:22 +0200 |
commit | efa55eb5b3d3a4942789bdf397c3a6d6226475d4 (patch) | |
tree | a3a3f3079bbff203ca6c70544b4258742f5f152d /include/lib/ArduinoJson/Data/JsonVariantAs.hpp | |
parent | 0558244645611f314f47e0fa427f7323ce253eaf (diff) |
Revert "remove external libraries from main branch"protocol-modeling
This reverts commit 0558244645611f314f47e0fa427f7323ce253eaf.
Diffstat (limited to 'include/lib/ArduinoJson/Data/JsonVariantAs.hpp')
-rw-r--r-- | include/lib/ArduinoJson/Data/JsonVariantAs.hpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/include/lib/ArduinoJson/Data/JsonVariantAs.hpp b/include/lib/ArduinoJson/Data/JsonVariantAs.hpp new file mode 100644 index 0000000..8f202c5 --- /dev/null +++ b/include/lib/ArduinoJson/Data/JsonVariantAs.hpp @@ -0,0 +1,42 @@ +// ArduinoJson - arduinojson.org +// Copyright Benoit Blanchon 2014-2018 +// MIT License + +#pragma once + +namespace ArduinoJson { +namespace Internals { + +// A metafunction that returns the type of the value returned by +// JsonVariant::as<T>() +template <typename T> +struct JsonVariantAs { + typedef T type; +}; + +template <> +struct JsonVariantAs<char*> { + typedef const char* type; +}; + +template <> +struct JsonVariantAs<JsonArray> { + typedef JsonArray& type; +}; + +template <> +struct JsonVariantAs<const JsonArray> { + typedef const JsonArray& type; +}; + +template <> +struct JsonVariantAs<JsonObject> { + typedef JsonObject& type; +}; + +template <> +struct JsonVariantAs<const JsonObject> { + typedef const JsonObject& type; +}; +} +} |