// ArduinoJson - https://arduinojson.org // Copyright © 2014-2022, Benoit BLANCHON // MIT License #pragma once #include #include namespace ARDUINOJSON_NAMESPACE { template template inline ArrayRef ObjectShortcuts::createNestedArray( const TString& key) const { return impl()->operator[](key).template to(); } template template inline ArrayRef ObjectShortcuts::createNestedArray(TChar* key) const { return impl()->operator[](key).template to(); } template template inline ObjectRef ObjectShortcuts::createNestedObject( const TString& key) const { return impl()->operator[](key).template to(); } template template inline ObjectRef ObjectShortcuts::createNestedObject( TChar* key) const { return impl()->operator[](key).template to(); } template template inline typename enable_if::value, bool>::type ObjectShortcuts::containsKey(const TString& key) const { return variantGetMember(VariantAttorney::getData(*impl()), adaptString(key)) != 0; } template template inline typename enable_if::value, bool>::type ObjectShortcuts::containsKey(TChar* key) const { return variantGetMember(VariantAttorney::getData(*impl()), adaptString(key)) != 0; } template template inline typename enable_if< IsString::value, VariantProxy > >::type ObjectShortcuts::operator[](TString* key) const { return VariantProxy >( MemberDataSource(*impl(), key)); } template template inline typename enable_if::value, VariantProxy > >::type ObjectShortcuts::operator[](const TString& key) const { return VariantProxy >( MemberDataSource(*impl(), key)); } } // namespace ARDUINOJSON_NAMESPACE