Skip to content

Commit a4441e5

Browse files
committed
Replace all the typename =
1 parent b3ca892 commit a4441e5

File tree

13 files changed

+79
-75
lines changed

13 files changed

+79
-75
lines changed

src/ArduinoJson/Array/JsonArray.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ class JsonArray : public detail::VariantOperators<JsonArray> {
6969
// Appends a value to the array.
7070
// https://arduinojson.org/v7/api/jsonarray/add/
7171
template <typename T,
72-
typename = detail::enable_if_t<!detail::is_const<T>::value>>
72+
detail::enable_if_t<!detail::is_const<T>::value, int> = 0>
7373
bool add(T* value) const {
7474
return detail::ArrayData::addValue(data_, value, resources_);
7575
}

src/ArduinoJson/Array/Utilities.hpp

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,25 @@ ARDUINOJSON_BEGIN_PUBLIC_NAMESPACE
1111

1212
// Copies a value to a JsonVariant.
1313
// This is a degenerated form of copyArray() to stop the recursion.
14-
template <typename T,
15-
typename = detail::enable_if_t<!detail::is_array<T>::value>>
14+
template <typename T, detail::enable_if_t<!detail::is_array<T>::value, int> = 0>
1615
inline bool copyArray(const T& src, JsonVariant dst) {
1716
return dst.set(src);
1817
}
1918

2019
// Copies values from an array to a JsonArray or a JsonVariant.
2120
// https://arduinojson.org/v7/api/misc/copyarray/
2221
template <typename T, size_t N, typename TDestination,
23-
typename = detail::enable_if_t<
24-
!detail::is_base_of<JsonDocument, TDestination>::value>>
22+
detail::enable_if_t<
23+
!detail::is_base_of<JsonDocument, TDestination>::value, int> = 0>
2524
inline bool copyArray(T (&src)[N], const TDestination& dst) {
2625
return copyArray(src, N, dst);
2726
}
2827

2928
// Copies values from an array to a JsonArray or a JsonVariant.
3029
// https://arduinojson.org/v7/api/misc/copyarray/
3130
template <typename T, typename TDestination,
32-
typename = detail::enable_if_t<
33-
!detail::is_base_of<JsonDocument, TDestination>::value>>
31+
detail::enable_if_t<
32+
!detail::is_base_of<JsonDocument, TDestination>::value, int> = 0>
3433
inline bool copyArray(const T* src, size_t len, const TDestination& dst) {
3534
bool ok = true;
3635
for (size_t i = 0; i < len; i++) {
@@ -62,8 +61,7 @@ inline bool copyArray(const T* src, size_t len, JsonDocument& dst) {
6261

6362
// Copies a value from a JsonVariant.
6463
// This is a degenerated form of copyArray() to stop the recursion.
65-
template <typename T,
66-
typename = detail::enable_if_t<!detail::is_array<T>::value>>
64+
template <typename T, detail::enable_if_t<!detail::is_array<T>::value, int> = 0>
6765
inline size_t copyArray(JsonVariantConst src, T& dst) {
6866
dst = src.as<T>();
6967
return 1;
@@ -102,10 +100,11 @@ inline size_t copyArray(JsonVariantConst src, char (&dst)[N]) {
102100

103101
// Copies values from a JsonDocument to an array.
104102
// https://arduinojson.org/v7/api/misc/copyarray/
105-
template <typename TSource, typename T,
106-
typename = detail::enable_if_t<
107-
detail::is_array<T>::value &&
108-
detail::is_base_of<JsonDocument, TSource>::value>>
103+
template <
104+
typename TSource, typename T,
105+
detail::enable_if_t<detail::is_array<T>::value &&
106+
detail::is_base_of<JsonDocument, TSource>::value,
107+
int> = 0>
109108
inline size_t copyArray(const TSource& src, T& dst) {
110109
return copyArray(src.template as<JsonArrayConst>(), dst);
111110
}

src/ArduinoJson/Deserialization/deserialize.hpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,11 @@ DeserializationError doDeserialize(TDestination&& dst, TReader reader,
5555
return err;
5656
}
5757

58-
template <template <typename> class TDeserializer, typename TDestination,
59-
typename TStream, typename... Args,
60-
typename = enable_if_t< // issue #1897
61-
!is_integral<typename first_or_void<Args...>::type>::value>>
58+
template <
59+
template <typename> class TDeserializer, typename TDestination,
60+
typename TStream, typename... Args,
61+
enable_if_t< // issue #1897
62+
!is_integral<typename first_or_void<Args...>::type>::value, int> = 0>
6263
DeserializationError deserialize(TDestination&& dst, TStream&& input,
6364
Args... args) {
6465
return doDeserialize<TDeserializer>(
@@ -68,7 +69,7 @@ DeserializationError deserialize(TDestination&& dst, TStream&& input,
6869

6970
template <template <typename> class TDeserializer, typename TDestination,
7071
typename TChar, typename Size, typename... Args,
71-
typename = enable_if_t<is_integral<Size>::value>>
72+
enable_if_t<is_integral<Size>::value, int> = 0>
7273
DeserializationError deserialize(TDestination&& dst, TChar* input,
7374
Size inputSize, Args... args) {
7475
return doDeserialize<TDeserializer>(dst, makeReader(input, size_t(inputSize)),

src/ArduinoJson/Document/JsonDocument.hpp

Lines changed: 24 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,13 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
3636
}
3737

3838
// Construct from variant, array, or object
39-
template <typename T, typename = detail::enable_if_t<
40-
detail::IsVariant<T>::value ||
41-
detail::is_same<T, JsonArray>::value ||
42-
detail::is_same<T, JsonArrayConst>::value ||
43-
detail::is_same<T, JsonObject>::value ||
44-
detail::is_same<T, JsonObjectConst>::value>>
39+
template <typename T,
40+
detail::enable_if_t<detail::IsVariant<T>::value ||
41+
detail::is_same<T, JsonArray>::value ||
42+
detail::is_same<T, JsonArrayConst>::value ||
43+
detail::is_same<T, JsonObject>::value ||
44+
detail::is_same<T, JsonObjectConst>::value,
45+
int> = 0>
4546
JsonDocument(const T& src,
4647
Allocator* alloc = detail::DefaultAllocator::instance())
4748
: JsonDocument(alloc) {
@@ -136,16 +137,17 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
136137

137138
// Replaces the root with the specified value.
138139
// https://arduinojson.org/v7/api/jsondocument/set/
139-
template <typename T, typename = detail::enable_if_t<
140-
!detail::is_base_of<JsonDocument, T>::value>>
140+
template <
141+
typename T,
142+
detail::enable_if_t<!detail::is_base_of<JsonDocument, T>::value, int> = 0>
141143
bool set(const T& src) {
142144
return to<JsonVariant>().set(src);
143145
}
144146

145147
// Replaces the root with the specified value.
146148
// https://arduinojson.org/v7/api/jsondocument/set/
147149
template <typename TChar,
148-
typename = detail::enable_if_t<!detail::is_const<TChar>::value>>
150+
detail::enable_if_t<!detail::is_const<TChar>::value, int> = 0>
149151
bool set(TChar* src) {
150152
return to<JsonVariant>().set(src);
151153
}
@@ -187,7 +189,7 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
187189
// Gets or sets a root object's member.
188190
// https://arduinojson.org/v7/api/jsondocument/subscript/
189191
template <typename TString,
190-
typename = detail::enable_if_t<detail::IsString<TString>::value>>
192+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
191193
detail::MemberProxy<JsonDocument&, detail::AdaptedString<TString>> operator[](
192194
const TString& key) {
193195
return {*this, detail::adaptString(key)};
@@ -196,8 +198,9 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
196198
// Gets or sets a root object's member.
197199
// https://arduinojson.org/v7/api/jsondocument/subscript/
198200
template <typename TChar,
199-
typename = detail::enable_if_t<detail::IsString<TChar*>::value &&
200-
!detail::is_const<TChar>::value>>
201+
detail::enable_if_t<detail::IsString<TChar*>::value &&
202+
!detail::is_const<TChar>::value,
203+
int> = 0>
201204
detail::MemberProxy<JsonDocument&, detail::AdaptedString<TChar*>> operator[](
202205
TChar* key) {
203206
return {*this, detail::adaptString(key)};
@@ -206,7 +209,7 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
206209
// Gets a root object's member.
207210
// https://arduinojson.org/v7/api/jsondocument/subscript/
208211
template <typename TString,
209-
typename = detail::enable_if_t<detail::IsString<TString>::value>>
212+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
210213
JsonVariantConst operator[](const TString& key) const {
211214
return JsonVariantConst(
212215
data_.getMember(detail::adaptString(key), &resources_), &resources_);
@@ -215,8 +218,9 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
215218
// Gets a root object's member.
216219
// https://arduinojson.org/v7/api/jsondocument/subscript/
217220
template <typename TChar,
218-
typename = detail::enable_if_t<detail::IsString<TChar*>::value &&
219-
!detail::is_const<TChar>::value>>
221+
detail::enable_if_t<detail::IsString<TChar*>::value &&
222+
!detail::is_const<TChar>::value,
223+
int> = 0>
220224
JsonVariantConst operator[](TChar* key) const {
221225
return JsonVariantConst(
222226
data_.getMember(detail::adaptString(key), &resources_), &resources_);
@@ -276,15 +280,15 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
276280
// Appends a value to the root array.
277281
// https://arduinojson.org/v7/api/jsondocument/add/
278282
template <typename TChar,
279-
typename = detail::enable_if_t<!detail::is_const<TChar>::value>>
283+
detail::enable_if_t<!detail::is_const<TChar>::value, int> = 0>
280284
bool add(TChar* value) {
281285
return data_.addValue(value, &resources_);
282286
}
283287

284288
// Removes an element of the root array.
285289
// https://arduinojson.org/v7/api/jsondocument/remove/
286290
template <typename T,
287-
typename = detail::enable_if_t<detail::is_integral<T>::value>>
291+
detail::enable_if_t<detail::is_integral<T>::value, int> = 0>
288292
void remove(T index) {
289293
detail::VariantData::removeElement(getData(), size_t(index),
290294
getResourceManager());
@@ -293,8 +297,9 @@ class JsonDocument : public detail::VariantOperators<const JsonDocument&> {
293297
// Removes a member of the root object.
294298
// https://arduinojson.org/v7/api/jsondocument/remove/
295299
template <typename TChar,
296-
typename = detail::enable_if_t<detail::IsString<TChar*>::value &&
297-
!detail::is_const<TChar>::value>>
300+
detail::enable_if_t<detail::IsString<TChar*>::value &&
301+
!detail::is_const<TChar>::value,
302+
int> = 0>
298303
void remove(TChar* key) {
299304
detail::VariantData::removeMember(getData(), detail::adaptString(key),
300305
getResourceManager());

src/ArduinoJson/Object/JsonObject.hpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ class JsonObject : public detail::VariantOperators<JsonObject> {
102102
// Gets or sets the member with specified key.
103103
// https://arduinojson.org/v7/api/jsonobject/subscript/
104104
template <typename TString,
105-
typename = detail::enable_if_t<detail::IsString<TString>::value>>
105+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
106106
detail::MemberProxy<JsonObject, detail::AdaptedString<TString>> operator[](
107107
const TString& key) const {
108108
return {*this, detail::adaptString(key)};
@@ -111,8 +111,9 @@ class JsonObject : public detail::VariantOperators<JsonObject> {
111111
// Gets or sets the member with specified key.
112112
// https://arduinojson.org/v7/api/jsonobject/subscript/
113113
template <typename TChar,
114-
typename = detail::enable_if_t<detail::IsString<TChar*>::value &&
115-
!detail::is_const<TChar>::value>>
114+
detail::enable_if_t<detail::IsString<TChar*>::value &&
115+
!detail::is_const<TChar>::value,
116+
int> = 0>
116117
detail::MemberProxy<JsonObject, detail::AdaptedString<TChar*>> operator[](
117118
TChar* key) const {
118119
return {*this, detail::adaptString(key)};
@@ -121,7 +122,7 @@ class JsonObject : public detail::VariantOperators<JsonObject> {
121122
// Gets or sets the member with specified key.
122123
// https://arduinojson.org/v7/api/jsonobject/subscript/
123124
template <typename TVariant,
124-
typename = detail::enable_if_t<detail::IsVariant<TVariant>::value>>
125+
detail::enable_if_t<detail::IsVariant<TVariant>::value, int> = 0>
125126
detail::MemberProxy<JsonObject, detail::AdaptedString<JsonString>> operator[](
126127
const TVariant& key) const {
127128
return {*this, detail::adaptString(key.template as<JsonString>())};
@@ -184,8 +185,7 @@ class JsonObject : public detail::VariantOperators<JsonObject> {
184185
// DEPRECATED: use obj[key].is<T>() instead
185186
// https://arduinojson.org/v7/api/jsonobject/containskey/
186187
template <typename TVariant,
187-
typename = detail::enable_if_t<detail::IsVariant<TVariant>::value>,
188-
int = 0>
188+
detail::enable_if_t<detail::IsVariant<TVariant>::value, int> = 0>
189189
ARDUINOJSON_DEPRECATED("use obj[key].is<T>() instead")
190190
bool containsKey(const TVariant& key) const {
191191
return containsKey(key.template as<const char*>());

src/ArduinoJson/Object/JsonObjectConst.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,7 @@ class JsonObjectConst : public detail::VariantOperators<JsonObjectConst> {
9999
// Gets the member with specified key.
100100
// https://arduinojson.org/v7/api/jsonobjectconst/subscript/
101101
template <typename TString,
102-
typename = detail::enable_if_t<detail::IsString<TString>::value>,
103-
short = 1>
102+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
104103
JsonVariantConst operator[](const TString& key) const {
105104
return JsonVariantConst(detail::ObjectData::getMember(
106105
data_, detail::adaptString(key), resources_),
@@ -110,8 +109,9 @@ class JsonObjectConst : public detail::VariantOperators<JsonObjectConst> {
110109
// Gets the member with specified key.
111110
// https://arduinojson.org/v7/api/jsonobjectconst/subscript/
112111
template <typename TChar,
113-
typename = detail::enable_if_t<detail::IsString<TChar*>::value &&
114-
!detail::is_const<TChar>::value>>
112+
detail::enable_if_t<detail::IsString<TChar*>::value &&
113+
!detail::is_const<TChar>::value,
114+
int> = 0>
115115
JsonVariantConst operator[](TChar* key) const {
116116
return JsonVariantConst(detail::ObjectData::getMember(
117117
data_, detail::adaptString(key), resources_),
@@ -121,7 +121,7 @@ class JsonObjectConst : public detail::VariantOperators<JsonObjectConst> {
121121
// Gets the member with specified key.
122122
// https://arduinojson.org/v7/api/jsonobjectconst/subscript/
123123
template <typename TVariant,
124-
typename = detail::enable_if_t<detail::IsVariant<TVariant>::value>>
124+
detail::enable_if_t<detail::IsVariant<TVariant>::value, int> = 0>
125125
JsonVariantConst operator[](const TVariant& key) const {
126126
if (key.template is<JsonString>())
127127
return operator[](key.template as<JsonString>());

src/ArduinoJson/Object/MemberProxy.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ class MemberProxy
3939
return *this;
4040
}
4141

42-
template <typename T, typename = enable_if_t<!is_const<T>::value>>
42+
template <typename T, enable_if_t<!is_const<T>::value, int> = 0>
4343
MemberProxy& operator=(T* src) {
4444
this->set(src);
4545
return *this;

src/ArduinoJson/Strings/JsonString.hpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,10 @@ class JsonString {
2424
JsonString(const char* data, bool isStatic = false)
2525
: str_(data, data ? ::strlen(data) : 0, isStatic) {}
2626

27-
template <typename TSize, typename = detail::enable_if_t<
28-
detail::is_integral<TSize>::value &&
29-
!detail::is_same<TSize, bool>::value>>
27+
template <typename TSize,
28+
detail::enable_if_t<detail::is_integral<TSize>::value &&
29+
!detail::is_same<TSize, bool>::value,
30+
int> = 0>
3031
JsonString(const char* data, TSize sz, bool isStatic = false)
3132
: str_(data, size_t(sz), isStatic) {}
3233

src/ArduinoJson/Strings/StringAdapter.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ AdaptedString<TString> adaptString(TString&& s) {
3434
return StringAdapterFor<TString>::adapt(detail::forward<TString>(s));
3535
}
3636

37-
template <typename TChar, typename = enable_if_t<!is_const<TChar>::value>>
37+
template <typename TChar, enable_if_t<!is_const<TChar>::value, int> = 0>
3838
AdaptedString<TChar*> adaptString(TChar* p) {
3939
return StringAdapter<TChar*>::adapt(p);
4040
}

src/ArduinoJson/Variant/JsonVariantConst.hpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,14 @@ class JsonVariantConst : public detail::VariantTag,
6868
// Casts the value to the specified type.
6969
// https://arduinojson.org/v7/api/jsonvariantconst/as/
7070
template <typename T,
71-
typename = detail::enable_if_t<ConversionSupported<T>::value>>
71+
detail::enable_if_t<ConversionSupported<T>::value, int> = 0>
7272
T as() const {
7373
return Converter<T>::fromJson(*this);
7474
}
7575

7676
// Invalid conversion. Will not compile.
77-
template <typename T, typename = detail::enable_if_t<
78-
!ConversionSupported<T>::value, bool>>
77+
template <typename T,
78+
detail::enable_if_t<!ConversionSupported<T>::value, int> = 0>
7979
detail::InvalidConversion<JsonVariantConst, T> as() const;
8080

8181
// Returns true if the value is of the specified type.
@@ -102,7 +102,7 @@ class JsonVariantConst : public detail::VariantTag,
102102
// Gets array's element at specified index.
103103
// https://arduinojson.org/v7/api/jsonvariantconst/subscript/
104104
template <typename T,
105-
typename = detail::enable_if_t<detail::is_integral<T>::value>>
105+
detail::enable_if_t<detail::is_integral<T>::value, int> = 0>
106106
JsonVariantConst operator[](T index) const {
107107
return JsonVariantConst(
108108
detail::VariantData::getElement(data_, size_t(index), resources_),
@@ -112,7 +112,7 @@ class JsonVariantConst : public detail::VariantTag,
112112
// Gets object's member with specified key.
113113
// https://arduinojson.org/v7/api/jsonvariantconst/subscript/
114114
template <typename TString,
115-
typename = detail::enable_if_t<detail::IsString<TString>::value>>
115+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
116116
JsonVariantConst operator[](const TString& key) const {
117117
return JsonVariantConst(detail::VariantData::getMember(
118118
data_, detail::adaptString(key), resources_),
@@ -146,7 +146,7 @@ class JsonVariantConst : public detail::VariantTag,
146146
// DEPRECATED: use obj[key].is<T>() instead
147147
// https://arduinojson.org/v7/api/jsonvariantconst/containskey/
148148
template <typename TString,
149-
typename = detail::enable_if_t<detail::IsString<TString>::value>>
149+
detail::enable_if_t<detail::IsString<TString>::value, int> = 0>
150150
ARDUINOJSON_DEPRECATED("use var[key].is<T>() instead")
151151
bool containsKey(const TString& key) const {
152152
return detail::VariantData::getMember(getData(), detail::adaptString(key),

0 commit comments

Comments
 (0)