about summary refs log tree commit diff
path: root/tests/rustdoc-json/enums/discriminant/struct.rs
blob: 24d5f5b08c203fa04c8f56143a02bf271bcf7d4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// ignore-tidy-linelength

#[repr(i32)]
//@ is "$.index[*][?(@.name=='Foo')].attrs" '["#[attr=\"Repr([ReprInt(SignedInt(I32))])\")]\n"]'
pub enum Foo {
    //@ is    "$.index[*][?(@.name=='Struct')].inner.variant.discriminant" null
    //@ count "$.index[*][?(@.name=='Struct')].inner.variant.kind.struct.fields[*]" 0
    Struct {},
    //@ is    "$.index[*][?(@.name=='StructWithDiscr')].inner.variant.discriminant" '{"expr": "42", "value": "42"}'
    //@ count "$.index[*][?(@.name=='StructWithDiscr')].inner.variant.kind.struct.fields[*]" 1
    StructWithDiscr { x: i32 } = 42,
    //@ is    "$.index[*][?(@.name=='StructWithHexDiscr')].inner.variant.discriminant"  '{"expr": "0x42", "value": "66"}'
    //@ count "$.index[*][?(@.name=='StructWithHexDiscr')].inner.variant.kind.struct.fields[*]" 2
    StructWithHexDiscr { x: i32, y: bool } = 0x42,
}