File: struct_pattern_partial.sail

package info (click to toggle)
sail-ocaml 0.19.1%2Bdfsg5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 18,008 kB
  • sloc: ml: 75,941; ansic: 8,848; python: 1,342; exp: 560; sh: 474; makefile: 218; cpp: 36
file content (23 lines) | stat: -rw-r--r-- 461 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
default Order dec

$include <prelude.sail>

struct foo = {
    field1 : bits(32),
    field2 : int
}

val main : unit -> unit

function main() = {
    match struct { field1 = 0xFFFF_ABCD, field2 = 3 } : foo {
        struct { field1 = b, _ } => {
            print_bits("field1 = ", b);
        }
    };
    match struct { field1 = 0xFFFF_ABCD, field2 = 3 } : foo {
        struct { field2 = i, _ } => {
            print_int("field2 = ", i);
        }
    }
}