@@ -2,7 +2,6 @@ use super::Deserializer;
22use crate :: serde:: { SerdeError , SerdeWrapper } ;
33use crate :: { i256, u256} ;
44use core:: fmt;
5- use core:: marker:: PhantomData ;
65use serde:: de as serde;
76
87/// Converts any [`serde::Deserializer`] to a SATS [`Deserializer`]
@@ -235,28 +234,6 @@ impl<'de, A: serde::SeqAccess<'de>> super::SeqProductAccess<'de> for SeqTupleAcc
235234 }
236235}
237236
238- /// Deserializes `none` variant of an optional value.
239- struct NoneAccess < E > ( PhantomData < E > ) ;
240- impl < E : super :: Error > super :: SumAccess < ' _ > for NoneAccess < E > {
241- type Error = E ;
242- type Variant = Self ;
243-
244- fn variant < V : super :: VariantVisitor > ( self , visitor : V ) -> Result < ( V :: Output , Self :: Variant ) , Self :: Error > {
245- visitor. visit_name ( "none" ) . map ( |var| ( var, self ) )
246- }
247- }
248- impl < ' de , E : super :: Error > super :: VariantAccess < ' de > for NoneAccess < E > {
249- type Error = E ;
250- fn deserialize_seed < T : super :: DeserializeSeed < ' de > > ( self , seed : T ) -> Result < T :: Output , Self :: Error > {
251- use crate :: algebraic_value:: de:: * ;
252- seed. deserialize ( ValueDeserializer :: new ( crate :: AlgebraicValue :: unit ( ) ) )
253- . map_err ( |err| match err {
254- ValueDeserializeError :: MismatchedType => E :: custom ( "mismatched type" ) ,
255- ValueDeserializeError :: Custom ( err) => E :: custom ( err) ,
256- } )
257- }
258- }
259-
260237/// Converts a SATS `SumVisitor` to `serde::Visitor`.
261238struct EnumVisitor < V > {
262239 /// The `SumVisitor`.
@@ -289,7 +266,7 @@ impl<'de, V: super::SumVisitor<'de>> serde::Visitor<'de> for EnumVisitor<V> {
289266
290267 fn visit_unit < E : serde:: Error > ( self ) -> Result < Self :: Value , E > {
291268 if self . visitor . is_option ( ) {
292- self . visitor . visit_sum ( NoneAccess ( PhantomData ) ) . map_err ( unwrap_error)
269+ self . visitor . visit_sum ( super :: NoneAccess :: new ( ) ) . map_err ( unwrap_error)
293270 } else {
294271 Err ( E :: invalid_type ( serde:: Unexpected :: Unit , & self ) )
295272 }
0 commit comments