11use crate :: serde_ext:: de:: IntoDeserializer ;
2- use crate :: { stry , Deserializer , Error , ErrorType , Node , Result , StaticNode } ;
2+ use crate :: { Deserializer , Error , ErrorType , Node , Result , StaticNode } ;
33use serde_ext:: de:: { self , DeserializeSeed , MapAccess , SeqAccess , Visitor } ;
44use serde_ext:: forward_to_deserialize_any;
55use std:: str;
1818 where
1919 V : Visitor < ' de > ,
2020 {
21- match stry ! ( self . next( ) ) {
21+ match self . next ( ) ? {
2222 Node :: String ( s) => visitor. visit_borrowed_str ( s) ,
2323 Node :: Static ( StaticNode :: Null ) => visitor. visit_unit ( ) ,
2424 Node :: Static ( StaticNode :: Bool ( b) ) => visitor. visit_bool ( b) ,
5353 where
5454 V : Visitor < ' de > ,
5555 {
56- match stry ! ( self . next( ) ) {
56+ match self . next ( ) ? {
5757 Node :: Static ( StaticNode :: Bool ( b) ) => visitor. visit_bool ( b) ,
5858 _c => Err ( Deserializer :: error ( ErrorType :: ExpectedBoolean ) ) ,
5959 }
9393 where
9494 V : Visitor < ' de > ,
9595 {
96- visitor. visit_i8 ( stry ! ( self . parse_i8( ) ) )
96+ visitor. visit_i8 ( self . parse_i8 ( ) ? )
9797 }
9898
9999 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -102,7 +102,7 @@ where
102102 where
103103 V : Visitor < ' de > ,
104104 {
105- visitor. visit_i16 ( stry ! ( self . parse_i16( ) ) )
105+ visitor. visit_i16 ( self . parse_i16 ( ) ? )
106106 }
107107
108108 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -111,23 +111,23 @@ where
111111 where
112112 V : Visitor < ' de > ,
113113 {
114- visitor. visit_i32 ( stry ! ( self . parse_i32( ) ) )
114+ visitor. visit_i32 ( self . parse_i32 ( ) ? )
115115 }
116116
117117 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
118118 fn deserialize_i64 < V > ( self , visitor : V ) -> Result < V :: Value >
119119 where
120120 V : Visitor < ' de > ,
121121 {
122- visitor. visit_i64 ( stry ! ( self . parse_i64( ) ) )
122+ visitor. visit_i64 ( self . parse_i64 ( ) ? )
123123 }
124124
125125 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
126126 fn deserialize_i128 < V > ( self , visitor : V ) -> Result < V :: Value >
127127 where
128128 V : Visitor < ' de > ,
129129 {
130- visitor. visit_i128 ( stry ! ( self . parse_i128( ) ) )
130+ visitor. visit_i128 ( self . parse_i128 ( ) ? )
131131 }
132132
133133 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -136,7 +136,7 @@ where
136136 where
137137 V : Visitor < ' de > ,
138138 {
139- visitor. visit_u8 ( stry ! ( self . parse_u8( ) ) )
139+ visitor. visit_u8 ( self . parse_u8 ( ) ? )
140140 }
141141
142142 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -145,7 +145,7 @@ where
145145 where
146146 V : Visitor < ' de > ,
147147 {
148- visitor. visit_u16 ( stry ! ( self . parse_u16( ) ) )
148+ visitor. visit_u16 ( self . parse_u16 ( ) ? )
149149 }
150150
151151 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -154,23 +154,23 @@ where
154154 where
155155 V : Visitor < ' de > ,
156156 {
157- visitor. visit_u32 ( stry ! ( self . parse_u32( ) ) )
157+ visitor. visit_u32 ( self . parse_u32 ( ) ? )
158158 }
159159
160160 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
161161 fn deserialize_u64 < V > ( self , visitor : V ) -> Result < V :: Value >
162162 where
163163 V : Visitor < ' de > ,
164164 {
165- visitor. visit_u64 ( stry ! ( self . parse_u64( ) ) )
165+ visitor. visit_u64 ( self . parse_u64 ( ) ? )
166166 }
167167
168168 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
169169 fn deserialize_u128 < V > ( self , visitor : V ) -> Result < V :: Value >
170170 where
171171 V : Visitor < ' de > ,
172172 {
173- visitor. visit_u128 ( stry ! ( self . parse_u128( ) ) )
173+ visitor. visit_u128 ( self . parse_u128 ( ) ? )
174174 }
175175
176176 #[ cfg_attr( not( feature = "no-inline" ) , inline) ]
@@ -179,7 +179,7 @@ where
179179 where
180180 V : Visitor < ' de > ,
181181 {
182- let v: f64 = stry ! ( self . parse_double( ) ) ;
182+ let v: f64 = self . parse_double ( ) ? ;
183183 visitor. visit_f32 ( v as f32 )
184184 }
185185
@@ -188,7 +188,7 @@ where
188188 where
189189 V : Visitor < ' de > ,
190190 {
191- visitor. visit_f64 ( stry ! ( self . parse_double( ) ) )
191+ visitor. visit_f64 ( self . parse_double ( ) ? )
192192 }
193193
194194 // An absent optional is represented as the JSON `null` and a present
@@ -205,7 +205,7 @@ where
205205 where
206206 V : Visitor < ' de > ,
207207 {
208- if stry ! ( self . peek( ) ) == Node :: Static ( StaticNode :: Null ) {
208+ if self . peek ( ) ? == Node :: Static ( StaticNode :: Null ) {
209209 self . skip ( ) ;
210210 visitor. visit_unit ( )
211211 } else {
@@ -219,7 +219,7 @@ where
219219 where
220220 V : Visitor < ' de > ,
221221 {
222- if stry ! ( self . next( ) ) != Node :: Static ( StaticNode :: Null ) {
222+ if self . next ( ) ? != Node :: Static ( StaticNode :: Null ) {
223223 return Err ( Deserializer :: error ( ErrorType :: ExpectedNull ) ) ;
224224 }
225225 visitor. visit_unit ( )
@@ -371,7 +371,7 @@ impl<'de, 'a> de::EnumAccess<'de> for VariantAccess<'a, 'de> {
371371 where
372372 V : de:: DeserializeSeed < ' de > ,
373373 {
374- let val = stry ! ( seed. deserialize( & mut * self . de) ) ;
374+ let val = seed. deserialize ( & mut * self . de ) ? ;
375375 Ok ( ( val, self ) )
376376 }
377377}
@@ -487,12 +487,12 @@ macro_rules! deserialize_integer_key {
487487 where
488488 V : de:: Visitor <' de>,
489489 {
490- visitor. $visit( stry! ( match unsafe { self . de. next_( ) } {
490+ visitor. $visit( match unsafe { self . de. next_( ) } {
491491 Node :: String ( s) => s
492492 . parse:: <$type>( )
493493 . map_err( |_| Deserializer :: error( ErrorType :: InvalidNumber ) ) ,
494494 _ => Err ( Deserializer :: error( ErrorType :: ExpectedString ) ) ,
495- } ) )
495+ } ? )
496496 }
497497 } ;
498498}
@@ -505,7 +505,7 @@ impl<'de, 'a> de::Deserializer<'de> for MapKey<'de, 'a> {
505505 where
506506 V : de:: Visitor < ' de > ,
507507 {
508- match stry ! ( self . de. next( ) ) {
508+ match self . de . next ( ) ? {
509509 Node :: String ( s) => visitor. visit_borrowed_str ( s) ,
510510 _ => Err ( Deserializer :: error ( ErrorType :: ExpectedString ) ) ,
511511 }
0 commit comments