1- use super :: cursor:: MultiNodeCursor ;
1+ use super :: cursor:: MultiNodeCursor ;
22use super :: { BodyCursor , Cursor } ;
33use super :: { DtError , PropCursor , RefDtb , RegConfig } ;
44
55use core:: marker:: PhantomData ;
6- use serde:: { de , Deserialize } ;
6+ use serde:: { Deserialize , de } ;
77
88#[ derive( Clone , Copy , Debug ) ]
99pub ( super ) enum ValueCursor {
1010 Body ( BodyCursor ) ,
1111 Prop ( BodyCursor , PropCursor ) ,
1212 Node ( MultiNodeCursor ) ,
13+ NodeIn ( MultiNodeCursor ) ,
1314}
1415
1516#[ derive( Clone , Copy ) ]
@@ -208,8 +209,9 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
208209 visitor. visit_some ( self )
209210 }
210211 }
211- ValueCursor :: Node ( _) => visitor. visit_some ( self ) ,
212+ ValueCursor :: NodeIn ( _) => visitor. visit_some ( self ) ,
212213 ValueCursor :: Body ( _) => visitor. visit_some ( self ) ,
214+ ValueCursor :: Node ( _) => unreachable ! ( "Node to option(NodeIn instead)" ) ,
213215 }
214216 }
215217
@@ -251,7 +253,7 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
251253 {
252254 use super :: { StructAccess , StructAccessType , Temp } ;
253255 match self . cursor {
254- ValueCursor :: Node ( result) => {
256+ ValueCursor :: NodeIn ( result) => {
255257 let mut start_cursor = result. start_cursor ;
256258 match start_cursor. move_on ( self . dtb ) {
257259 Cursor :: Title ( c) => {
@@ -302,7 +304,7 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
302304 {
303305 use super :: { StructAccess , StructAccessType , Temp } ;
304306 match self . cursor {
305- ValueCursor :: Node ( _) => visitor. visit_map ( StructAccess {
307+ ValueCursor :: NodeIn ( _) => visitor. visit_map ( StructAccess {
306308 access_type : StructAccessType :: Map ( false ) ,
307309 temp : Temp :: Uninit ,
308310 de : self ,
@@ -313,6 +315,7 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
313315 de : self ,
314316 } ) ,
315317 ValueCursor :: Prop ( _, _) => unreachable ! ( "Prop -> map" ) ,
318+ ValueCursor :: Node ( _) => unreachable ! ( "Node -> map (Use NodeIn instead)" ) ,
316319 }
317320 }
318321
@@ -327,7 +330,7 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
327330 {
328331 use super :: { StructAccess , StructAccessType , Temp } ;
329332 match self . cursor {
330- ValueCursor :: Node ( _) => visitor. visit_map ( StructAccess {
333+ ValueCursor :: NodeIn ( _) => visitor. visit_map ( StructAccess {
331334 access_type : StructAccessType :: Struct ( fields) ,
332335 temp : Temp :: Uninit ,
333336 de : self ,
@@ -338,6 +341,7 @@ impl<'de> de::Deserializer<'de> for &mut ValueDeserializer<'de> {
338341 de : self ,
339342 } ) ,
340343 ValueCursor :: Prop ( _, _) => unreachable ! ( "Prop -> struct {_name}" ) ,
344+ ValueCursor :: Node ( _) => unreachable ! ( "Node -> struct {_name} (Use NodeIn instead)" ) ,
341345 }
342346 }
343347
0 commit comments