Implemented JsonVariant comparisons with template friends

This commit is contained in:
Benoit Blanchon
2017-08-06 16:26:38 +02:00
parent 729bf0afd2
commit ed98ea4e43
8 changed files with 305 additions and 265 deletions

View File

@@ -106,15 +106,16 @@ inline const JsonArraySubscript JsonArray::operator[](size_t index) const {
return JsonArraySubscript(*const_cast<JsonArray*>(this), index);
}
template <typename TImplem>
inline JsonArraySubscript JsonVariantBase<TImplem>::operator[](size_t index) {
return as<JsonArray>()[index];
template <typename TImpl>
inline JsonArraySubscript JsonVariantSubscripts<TImpl>::operator[](
size_t index) {
return impl()->template as<JsonArray>()[index];
}
template <typename TImplem>
inline const JsonArraySubscript JsonVariantBase<TImplem>::operator[](
template <typename TImpl>
inline const JsonArraySubscript JsonVariantSubscripts<TImpl>::operator[](
size_t index) const {
return as<JsonArray>()[index];
return impl()->template as<JsonArray>()[index];
}
} // namespace ArduinoJson