1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
(* TEST
include testing;
*)
type r =
{ a : unit;
b : int;
c : char;
d : float; }
let r1 =
{
c = (print_endline "c1"; 'c');
a = print_endline "a1";
d = (print_endline "d1"; 1.);
b = (print_endline "b1"; 2);
}
let r2 =
{
b = (print_endline "b2"; 2);
d = (print_endline "d2"; 1.);
a = print_endline "a2";
c = (print_endline "c2"; 'c');
}
let r3 =
{ (print_endline "default"; r1) with
d = (print_endline "d3"; 1.);
c = (print_endline "c3"; 'c');
a = print_endline "a3";
}
let () = print_endline ""
type r2 =
{ x1 : unit;
x2 : unit;
x3 : unit;
x4 : unit;
x5 : unit;
x6 : unit;
x7 : unit;
x8 : unit;
x9 : unit; }
let a =
{
x5 = print_endline "x5";
x6 = print_endline "x6";
x1 = print_endline "x1";
x3 = print_endline "x3";
x4 = print_endline "x4";
x9 = print_endline "x9";
x7 = print_endline "x7";
x8 = print_endline "x8";
x2 = print_endline "x2";
}
let () = print_endline ""
let b =
{ a with
x7 = print_endline "x7";
x2 = print_endline "x2";
}
let () = print_endline ""
let c =
{ a with
x2 = print_endline "x2";
x7 = print_endline "x7";
}
let () = print_endline ""
let c =
{ a with
x2 = print_endline "x2";
x7 = print_endline "x7";
x5 = print_endline "x5";
}
let () = print_endline ""
let d =
{ a with
x5 = print_endline "x5";
x7 = print_endline "x7";
x2 = print_endline "x2";
}
include Testing
|