fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
    where
        D: Deserializer<'de>,
    {
        struct MetadataVisitor<
            AT: ApplicationType,
            CA: ClientAuthMethod,
            G: GrantType,
            JE: JweContentEncryptionAlgorithm,
            JK: JweKeyManagementAlgorithm,
            JS: JwsSigningAlgorithm<JT>,
            JT: JsonWebKeyType,
            JU: JsonWebKeyUse,
            K: JsonWebKey<JS, JT, JU>,
            RT: ResponseType,
            S: SubjectIdentifierType,
        >(
            PhantomData<AT>,
            PhantomData<CA>,
            PhantomData<G>,
            PhantomData<JE>,
            PhantomData<JK>,
            PhantomData<JS>,
            PhantomData<JT>,
            PhantomData<JU>,
            PhantomData<K>,
            PhantomData<RT>,
            PhantomData<S>,
        );
        impl<'de, AT, CA, G, JE, JK, JS, JT, JU, K, RT, S> Visitor<'de>
            for MetadataVisitor<AT, CA, G, JE, JK, JS, JT, JU, K, RT, S>
        where
            AT: ApplicationType,
            CA: ClientAuthMethod,
            G: GrantType,
            JE: JweContentEncryptionAlgorithm,
            JK: JweKeyManagementAlgorithm,
            JS: JwsSigningAlgorithm<JT>,
            JT: JsonWebKeyType,
            JU: JsonWebKeyUse,
            K: JsonWebKey<JS, JT, JU>,
            RT: ResponseType,
            S: SubjectIdentifierType,
        {
            type Value = Registration10ClientMetadata<AT, CA, G, JE, JK, JS, JT, JU, K, RT, S>;

            fn expecting(&self, formatter: &mut Formatter) -> FormatterResult {
                formatter.write_str("struct Registration10ClientMetadata")
            }
            fn visit_map<V>(self, mut map: V) -> Result<Self::Value, V::Error>
            where
                V: MapAccess<'de>,
            {
                deserialize_fields!{
                    map {
                        [redirect_uris]
                        [Option(response_types)]
                        [Option(grant_types)]
                        [Option(application_type)]
                        [Option(contacts)]
                        [LanguageTag(client_name)]
                        [LanguageTag(logo_uri)]
                        [LanguageTag(client_uri)]
                        [LanguageTag(policy_uri)]
                        [LanguageTag(tos_uri)]
                        [Option(jwks_uri)]
                        [Option(jwks)]
                        [Option(sector_identifier_uri)]
                        [Option(subject_type)]
                        [Option(id_token_signed_response_alg)]
                        [Option(id_token_encrypted_response_alg)]
                        [Option(id_token_encrypted_response_enc)]
                        [Option(userinfo_signed_response_alg)]
                        [Option(userinfo_encrypted_response_alg)]
                        [Option(userinfo_encrypted_response_enc)]
                        [Option(request_object_signing_alg)]
                        [Option(request_object_encryption_alg)]
                        [Option(request_object_encryption_enc)]
                        [Option(token_endpoint_auth_method)]
                        [Option(token_endpoint_auth_signing_alg)]
                        [Option(Seconds(default_max_age))]
                        [Option(require_auth_time)]
                        [Option(default_acr_values)]
                        [Option(initiate_login_uri)]
                        [Option(request_uris)]
                    }
                }
            }
        }
        deserializer.deserialize_map(MetadataVisitor(
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
        ))
    }
///
/// Special deserializer that supports [RFC 5646](https://tools.ietf.org/html/rfc5646) language
/// tags associated with human-readable client metadata fields.
///
Special deserializer that supports [RFC 5646] language
tags associated with human-readable client metadata fields.
Special deserializer that supports [ RFC 5646 ] language tags associated with human - readable client metadata fields .
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
    where
        D: Deserializer<'de>,
    {
        struct MetadataVisitor<
            AT: ApplicationType,
            CA: ClientAuthMethod,
            G: GrantType,
            JE: JweContentEncryptionAlgorithm,
            JK: JweKeyManagementAlgorithm,
            JS: JwsSigningAlgorithm<JT>,
            JT: JsonWebKeyType,
            JU: JsonWebKeyUse,
            K: JsonWebKey<JS, JT, JU>,
            RT: ResponseType,
            S: SubjectIdentifierType,
        >(
            PhantomData<AT>,
            PhantomData<CA>,
            PhantomData<G>,
            PhantomData<JE>,
            PhantomData<JK>,
            PhantomData<JS>,
            PhantomData<JT>,
            PhantomData<JU>,
            PhantomData<K>,
            PhantomData<RT>,
            PhantomData<S>,
        );
        impl<'de, AT, CA, G, JE, JK, JS, JT, JU, K, RT, S> Visitor<'de>
            for MetadataVisitor<AT, CA, G, JE, JK, JS, JT, JU, K, RT, S>
        where
            AT: ApplicationType,
            CA: ClientAuthMethod,
            G: GrantType,
            JE: JweContentEncryptionAlgorithm,
            JK: JweKeyManagementAlgorithm,
            JS: JwsSigningAlgorithm<JT>,
            JT: JsonWebKeyType,
            JU: JsonWebKeyUse,
            K: JsonWebKey<JS, JT, JU>,
            RT: ResponseType,
            S: SubjectIdentifierType,
        {
            type Value = Registration10ClientMetadata<AT, CA, G, JE, JK, JS, JT, JU, K, RT, S>;
            fn expecting(&self, formatter: &mut Formatter) -> FormatterResult {
                formatter.write_str("struct Registration10ClientMetadata")
            }
            fn visit_map<V>(self, mut map: V) -> Result<Self::Value, V::Error>
            where
                V: MapAccess<'de>,
            {
                deserialize_fields!{
                    map {
                        [redirect_uris]
                        [Option(response_types)]
                        [Option(grant_types)]
                        [Option(application_type)]
                        [Option(contacts)]
                        [LanguageTag(client_name)]
                        [LanguageTag(logo_uri)]
                        [LanguageTag(client_uri)]
                        [LanguageTag(policy_uri)]
                        [LanguageTag(tos_uri)]
                        [Option(jwks_uri)]
                        [Option(jwks)]
                        [Option(sector_identifier_uri)]
                        [Option(subject_type)]
                        [Option(id_token_signed_response_alg)]
                        [Option(id_token_encrypted_response_alg)]
                        [Option(id_token_encrypted_response_enc)]
                        [Option(userinfo_signed_response_alg)]
                        [Option(userinfo_encrypted_response_alg)]
                        [Option(userinfo_encrypted_response_enc)]
                        [Option(request_object_signing_alg)]
                        [Option(request_object_encryption_alg)]
                        [Option(request_object_encryption_enc)]
                        [Option(token_endpoint_auth_method)]
                        [Option(token_endpoint_auth_signing_alg)]
                        [Option(Seconds(default_max_age))]
                        [Option(require_auth_time)]
                        [Option(default_acr_values)]
                        [Option(initiate_login_uri)]
                        [Option(request_uris)]
                    }
                }
            }
        }
        deserializer.deserialize_map(MetadataVisitor(
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
            PhantomData,
        ))
    }
fn deserialize < D > ( deserializer : D ) -> Result < Self , D :: Error > where D : Deserializer < ' de > , { struct MetadataVisitor < AT : ApplicationType , CA : ClientAuthMethod , G : GrantType , JE : JweContentEncryptionAlgorithm , JK : JweKeyManagementAlgorithm , JS : JwsSigningAlgorithm < JT > , JT : JsonWebKeyType , JU : JsonWebKeyUse , K : JsonWebKey < JS , JT , JU > , RT : ResponseType , S : SubjectIdentifierType , > ( PhantomData < AT > , PhantomData < CA > , PhantomData < G > , PhantomData < JE > , PhantomData < JK > , PhantomData < JS > , PhantomData < JT > , PhantomData < JU > , PhantomData < K > , PhantomData < RT > , PhantomData < S > , ) ; impl < ' de , AT , CA , G , JE , JK , JS , JT , JU , K , RT , S > Visitor < ' de > for MetadataVisitor < AT , CA , G , JE , JK , JS , JT , JU , K , RT , S > where AT : ApplicationType , CA : ClientAuthMethod , G : GrantType , JE : JweContentEncryptionAlgorithm , JK : JweKeyManagementAlgorithm , JS : JwsSigningAlgorithm < JT > , JT : JsonWebKeyType , JU : JsonWebKeyUse , K : JsonWebKey < JS , JT , JU > , RT : ResponseType , S : SubjectIdentifierType , { type Value = Registration10ClientMetadata < AT , CA , G , JE , JK , JS , JT , JU , K , RT , S > ; fn expecting ( & self , formatter : & mut Formatter ) -> FormatterResult { formatter . write_str ( " " ) } fn visit_map < V > ( self , mut map : V ) -> Result < Self :: Value , V :: Error > where V : MapAccess < ' de > , { deserialize_fields ! { map { [ redirect_uris ] [ Option ( response_types ) ] [ Option ( grant_types ) ] [ Option ( application_type ) ] [ Option ( contacts ) ] [ LanguageTag ( client_name ) ] [ LanguageTag ( logo_uri ) ] [ LanguageTag ( client_uri ) ] [ LanguageTag ( policy_uri ) ] [ LanguageTag ( tos_uri ) ] [ Option ( jwks_uri ) ] [ Option ( jwks ) ] [ Option ( sector_identifier_uri ) ] [ Option ( subject_type ) ] [ Option ( id_token_signed_response_alg ) ] [ Option ( id_token_encrypted_response_alg ) ] [ Option ( id_token_encrypted_response_enc ) ] [ Option ( userinfo_signed_response_alg ) ] [ Option ( userinfo_encrypted_response_alg ) ] [ Option ( userinfo_encrypted_response_enc ) ] [ Option ( request_object_signing_alg ) ] [ Option ( request_object_encryption_alg ) ] [ Option ( request_object_encryption_enc ) ] [ Option ( token_endpoint_auth_method ) ] [ Option ( token_endpoint_auth_signing_alg ) ] [ Option ( Seconds ( default_max_age ) ) ] [ Option ( require_auth_time ) ] [ Option ( default_acr_values ) ] [ Option ( initiate_login_uri ) ] [ Option ( request_uris ) ] } } } } deserializer . deserialize_map ( MetadataVisitor ( PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , PhantomData , ) ) }
Special deserializer that supports [RFC 5646](https://tools.ietf.org/html/rfc5646) language
tags associated with human-readable client metadata fields.
Special deserializer that supports [ RFC 5646 ] ( https : // tools . ietf . org / html / rfc5646 ) language tags associated with human - readable client metadata fields .
deserializer
D
deserializer
D