@@ -31,10 +31,12 @@ fn eq_test() {
3131#[ soa_derive( PartialEq , Debug , Serialize , Deserialize ) ]
3232pub struct Point {
3333 #[ soa_attr( Slice , deprecated) ]
34+ #[ soa_attr( RefMut , deprecated) ]
3435 pub x : f32 ,
3536 #[ soa_attr( SliceMut , deprecated) ]
3637 pub y : f32 ,
3738 #[ soa_attr( Vec , serde( skip) ) ]
39+ #[ soa_attr( Ref , deprecated) ]
3840 pub meta : bool
3941}
4042
@@ -53,16 +55,27 @@ fn serde_skip_test() -> Result<(), serde_json::Error> {
5355 y: vec![ 2.0 , 4.0 ] ,
5456 meta: vec![ ]
5557 } ) ;
58+
5659 {
5760 let slice = soa. as_slice ( ) ;
5861 let _ = slice. x [ 0 ] ; // Should have a deprecate warning
5962 let _ = slice. y [ 0 ] ; // Should not have a deprecate warning
63+ let _ = slice. meta [ 0 ] ; // Should not have a deprecate warning
64+
65+ let ref_ = slice. get ( 1 ) . unwrap ( ) ;
66+ let _ = ref_. x ; // Should not have a deprecate warning
67+ let _ = ref_. y ; // Should not have a deprecate warning
68+ let _ = ref_. meta ; // Should have a deprecate warning
6069 }
6170 {
62- let slice = soa. as_mut_slice ( ) ;
71+ let mut slice = soa. as_mut_slice ( ) ;
6372 let _ = slice. y [ 0 ] ; // Should have a deprecate warning
6473 let _ = slice. x [ 0 ] ; // Should not have a deprecate warning
6574
75+ let ref_mut = slice. get_mut ( 1 ) . unwrap ( ) ;
76+ let _ = ref_mut. x ; // Should have a deprecate warning
77+ let _ = ref_mut. y ; // Should not have a deprecate warning
78+ let _ = ref_mut. meta ; // Should not have a deprecate warning
6679 }
6780 Ok ( ( ) )
6881}
0 commit comments