@@ -51,34 +51,31 @@ enum Mixed {
5151}
5252
5353pub fn main ( ) {
54- unsafe {
54+ assert_eq ! ( discriminant_value( & CLike1 :: A ) , 0 ) ;
55+ assert_eq ! ( discriminant_value( & CLike1 :: B ) , 1 ) ;
56+ assert_eq ! ( discriminant_value( & CLike1 :: C ) , 2 ) ;
57+ assert_eq ! ( discriminant_value( & CLike1 :: D ) , 3 ) ;
5558
56- assert_eq ! ( discriminant_value( & CLike1 :: A ) , 0 ) ;
57- assert_eq ! ( discriminant_value( & CLike1 :: B ) , 1 ) ;
58- assert_eq ! ( discriminant_value( & CLike1 :: C ) , 2 ) ;
59- assert_eq ! ( discriminant_value( & CLike1 :: D ) , 3 ) ;
59+ assert_eq ! ( discriminant_value( & CLike2 :: A ) , 5 ) ;
60+ assert_eq ! ( discriminant_value( & CLike2 :: B ) , 2 ) ;
61+ assert_eq ! ( discriminant_value( & CLike2 :: C ) , 19 ) ;
62+ assert_eq ! ( discriminant_value( & CLike2 :: D ) , 20 ) ;
6063
61- assert_eq ! ( discriminant_value( & CLike2 :: A ) , 5 ) ;
62- assert_eq ! ( discriminant_value( & CLike2 :: B ) , 2 ) ;
63- assert_eq ! ( discriminant_value( & CLike2 :: C ) , 19 ) ;
64- assert_eq ! ( discriminant_value( & CLike2 :: D ) , 20 ) ;
64+ assert_eq ! ( discriminant_value( & CLike3 :: A ) , 5 ) ;
65+ assert_eq ! ( discriminant_value( & CLike3 :: B ) , 6 ) ;
66+ assert_eq ! ( discriminant_value( & CLike3 :: C ) , - 1_i8 as u64 ) ;
67+ assert_eq ! ( discriminant_value( & CLike3 :: D ) , 0 ) ;
6568
66- assert_eq ! ( discriminant_value( & CLike3 :: A ) , 5 ) ;
67- assert_eq ! ( discriminant_value( & CLike3 :: B ) , 6 ) ;
68- assert_eq ! ( discriminant_value( & CLike3 :: C ) , -1_i8 as u64 ) ;
69- assert_eq ! ( discriminant_value( & CLike3 :: D ) , 0 ) ;
69+ assert_eq ! ( discriminant_value( & ADT :: First ( 0 , 0 ) ) , 0 ) ;
70+ assert_eq ! ( discriminant_value( & ADT :: Second ( 5 ) ) , 1 ) ;
7071
71- assert_eq ! ( discriminant_value( & ADT :: First ( 0 , 0 ) ) , 0 ) ;
72- assert_eq ! ( discriminant_value( & ADT :: Second ( 5 ) ) , 1 ) ;
72+ assert_eq ! ( discriminant_value( & NullablePointer :: Nothing ) , 1 ) ;
73+ assert_eq ! ( discriminant_value( & NullablePointer :: Something ( & CONST ) ) , 0 ) ;
7374
74- assert_eq ! ( discriminant_value( & NullablePointer :: Nothing ) , 1 ) ;
75- assert_eq ! ( discriminant_value( & NullablePointer :: Something ( & CONST ) ) , 0 ) ;
75+ assert_eq ! ( discriminant_value( & 10 ) , 0 ) ;
76+ assert_eq ! ( discriminant_value( & "test" ) , 0 ) ;
7677
77- assert_eq ! ( discriminant_value( & 10 ) , 0 ) ;
78- assert_eq ! ( discriminant_value( & "test" ) , 0 ) ;
79-
80- assert_eq ! ( 3 , discriminant_value( & Mixed :: Unit ) ) ;
81- assert_eq ! ( 2 , discriminant_value( & Mixed :: Tuple ( 5 ) ) ) ;
82- assert_eq ! ( 1 , discriminant_value( & Mixed :: Struct { a: 7 , b: 11 } ) ) ;
83- }
78+ assert_eq ! ( 3 , discriminant_value( & Mixed :: Unit ) ) ;
79+ assert_eq ! ( 2 , discriminant_value( & Mixed :: Tuple ( 5 ) ) ) ;
80+ assert_eq ! ( 1 , discriminant_value( & Mixed :: Struct { a: 7 , b: 11 } ) ) ;
8481}
0 commit comments