File tree Expand file tree Collapse file tree 1 file changed +41
-0
lines changed
verify/rust_verify/example Expand file tree Collapse file tree 1 file changed +41
-0
lines changed Original file line number Diff line number Diff line change
1
+ #[ macro_use] extern crate builtin_macros;
2
+ extern crate builtin;
3
+ use builtin:: * ;
4
+ mod pervasive;
5
+ use pervasive:: * ;
6
+
7
+ #[ derive( Structural , PartialEq , Eq ) ]
8
+ struct Car < P > {
9
+ four_doors : bool ,
10
+ passengers : P ,
11
+ }
12
+
13
+ #[ derive( Structural , PartialEq , Eq ) ]
14
+ enum Vehicle {
15
+ Car ( Car < int > ) ,
16
+ Train ( bool ) ,
17
+ }
18
+
19
+ fn test_struct_1 ( p : int ) {
20
+ let c1 = Car { four_doors : true , passengers : p } ;
21
+ assert ( c1. passengers == p) ;
22
+ assert ( ( Car { passengers : p, four_doors : true } ) . passengers == p) ;
23
+ }
24
+
25
+ // fn test_structural_eq(passengers: int) {
26
+ // let c1 = Car { passengers, four_doors: true };
27
+ // let c2 = Car { passengers, four_doors: false };
28
+ // let c3 = Car { passengers, four_doors: true };
29
+ //
30
+ // assert(c1 == c3);
31
+ // assert(c1 != c2);
32
+ //
33
+ // let t = Vehicle::Train(true);
34
+ // let ca = Vehicle::Car(c1);
35
+ //
36
+ // assert(t != ca);
37
+ // // assert(t == ca); // FAILS
38
+ // }
39
+
40
+ fn main ( ) {
41
+ }
You can’t perform that action at this time.
0 commit comments