@@ -102,31 +102,31 @@ 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- detail::enable_if_t <detail::IsString<TString>::value,
106- detail::MemberProxy<JsonObject, TString>>
105+ detail::enable_if_t <
106+ detail::IsString<TString>::value,
107+ detail::MemberProxy<JsonObject, detail::AdaptedString<TString>>>
107108 operator [](const TString& key) const {
108- return {*this , key};
109+ return {*this , detail::adaptString ( key) };
109110 }
110111
111112 // Gets or sets the member with specified key.
112113 // https://arduinojson.org/v7/api/jsonobject/subscript/
113114 template <typename TChar>
114- detail::enable_if_t <detail::IsString<TChar*>::value,
115- detail::MemberProxy<JsonObject, TChar*>>
115+ detail::enable_if_t <
116+ detail::IsString<TChar*>::value,
117+ detail::MemberProxy<JsonObject, detail::AdaptedString<TChar*>>>
116118 operator [](TChar* key) const {
117- return {*this , key};
119+ return {*this , detail::adaptString ( key) };
118120 }
119121
120122 // Gets or sets the member with specified key.
121123 // https://arduinojson.org/v7/api/jsonobject/subscript/
122124 template <typename TVariant>
123- detail::enable_if_t <detail::IsVariant<TVariant>::value,
124- detail::MemberProxy<JsonObject, JsonString>>
125+ detail::enable_if_t <
126+ detail::IsVariant<TVariant>::value,
127+ detail::MemberProxy<JsonObject, detail::AdaptedString<JsonString>>>
125128 operator [](const TVariant& key) const {
126- if (key.template is <JsonString>())
127- return {*this , key.template as <JsonString>()};
128- else
129- return {*this , nullptr };
129+ return {*this , detail::adaptString (key.template as <JsonString>())};
130130 }
131131
132132 // Removes the member at the specified iterator.
0 commit comments