aboutsummaryrefslogtreecommitdiff
path: root/test/cases/enum_values.1.zig
blob: 7679a8736181df789c317d34a0872f5705f521cd (plain)
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
const Number = enum { One, Two, Three };

pub fn main() void {
    var number1 = Number.One;
    _ = &number1;
    var number2: Number = .Two;
    _ = &number2;
    const number3: Number = @enumFromInt(2);
    assert(number1 != number2);
    assert(number2 != number3);
    assert(@intFromEnum(number1) == 0);
    assert(@intFromEnum(number2) == 1);
    assert(@intFromEnum(number3) == 2);
    var x: Number = .Two;
    _ = &x;
    assert(number2 == x);

    return;
}
fn assert(val: bool) void {
    if (!val) unreachable;
}

// run
//