@@ -31,10 +31,12 @@ fn eq_test() {
31
31
#[ soa_derive( PartialEq , Debug , Serialize , Deserialize ) ]
32
32
pub struct Point {
33
33
#[ soa_attr( Slice , deprecated) ]
34
+ #[ soa_attr( RefMut , deprecated) ]
34
35
pub x : f32 ,
35
36
#[ soa_attr( SliceMut , deprecated) ]
36
37
pub y : f32 ,
37
38
#[ soa_attr( Vec , serde( skip) ) ]
39
+ #[ soa_attr( Ref , deprecated) ]
38
40
pub meta : bool
39
41
}
40
42
@@ -53,16 +55,27 @@ fn serde_skip_test() -> Result<(), serde_json::Error> {
53
55
y: vec![ 2.0 , 4.0 ] ,
54
56
meta: vec![ ]
55
57
} ) ;
58
+
56
59
{
57
60
let slice = soa. as_slice ( ) ;
58
61
let _ = slice. x [ 0 ] ; // Should have a deprecate warning
59
62
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
60
69
}
61
70
{
62
- let slice = soa. as_mut_slice ( ) ;
71
+ let mut slice = soa. as_mut_slice ( ) ;
63
72
let _ = slice. y [ 0 ] ; // Should have a deprecate warning
64
73
let _ = slice. x [ 0 ] ; // Should not have a deprecate warning
65
74
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
66
79
}
67
80
Ok ( ( ) )
68
81
}
0 commit comments