RPM build fix (reverted CI changes which will need to be un-reverted or made conditional) and vendor Rust dependencies to make builds much faster in any CI system.
This commit is contained in:
150
zeroidc/vendor/cbindgen/tests/rust/enum.rs
vendored
Normal file
150
zeroidc/vendor/cbindgen/tests/rust/enum.rs
vendored
Normal file
@@ -0,0 +1,150 @@
|
||||
enum Opaque {
|
||||
Foo(i32),
|
||||
Bar,
|
||||
}
|
||||
|
||||
#[repr(u64)]
|
||||
enum A {
|
||||
a1 = 0,
|
||||
a2 = 2,
|
||||
a3,
|
||||
a4 = 5,
|
||||
}
|
||||
|
||||
#[repr(u32)]
|
||||
enum B {
|
||||
b1 = 0,
|
||||
b2 = 2,
|
||||
b3,
|
||||
b4 = 5,
|
||||
}
|
||||
|
||||
#[repr(u16)]
|
||||
enum C {
|
||||
c1 = 0,
|
||||
c2 = 2,
|
||||
c3,
|
||||
c4 = 5,
|
||||
}
|
||||
|
||||
#[repr(u8)]
|
||||
enum D {
|
||||
d1 = 0,
|
||||
d2 = 2,
|
||||
d3,
|
||||
d4 = 5,
|
||||
}
|
||||
|
||||
#[repr(usize)]
|
||||
enum E {
|
||||
e1 = 0,
|
||||
e2 = 2,
|
||||
e3,
|
||||
e4 = 5,
|
||||
}
|
||||
|
||||
#[repr(isize)]
|
||||
enum F {
|
||||
f1 = 0,
|
||||
f2 = 2,
|
||||
f3,
|
||||
f4 = 5,
|
||||
}
|
||||
|
||||
#[repr(u8)]
|
||||
enum G {
|
||||
Foo(i16),
|
||||
Bar { x: u8, y: i16 },
|
||||
Baz,
|
||||
}
|
||||
|
||||
/// cbindgen:prefix-with-name
|
||||
#[repr(C)]
|
||||
enum H {
|
||||
Foo(i16),
|
||||
Bar { x: u8, y: i16 },
|
||||
Baz,
|
||||
}
|
||||
|
||||
/// cbindgen:prefix-with-name
|
||||
#[repr(C, u8)]
|
||||
enum I {
|
||||
Foo(i16),
|
||||
Bar { x: u8, y: i16 },
|
||||
Baz,
|
||||
}
|
||||
|
||||
#[repr(C, u8, u16)]
|
||||
enum J {
|
||||
Foo(i16),
|
||||
Bar { x: u8, y: i16 },
|
||||
Baz,
|
||||
}
|
||||
|
||||
#[repr(C, u8, unknown_hint)]
|
||||
enum K {
|
||||
Foo(i16),
|
||||
Bar { x: u8, y: i16 },
|
||||
Baz,
|
||||
}
|
||||
|
||||
#[repr(C)]
|
||||
enum L {
|
||||
l1,
|
||||
l2,
|
||||
l3,
|
||||
l4,
|
||||
}
|
||||
|
||||
#[repr(i8)]
|
||||
enum M {
|
||||
m1 = -1,
|
||||
m2 = 0,
|
||||
m3 = 1,
|
||||
}
|
||||
|
||||
/// cbindgen:enum-class=false
|
||||
#[repr(C)]
|
||||
enum N {
|
||||
n1,
|
||||
n2,
|
||||
n3,
|
||||
n4,
|
||||
}
|
||||
|
||||
/// cbindgen:enum-class=false
|
||||
#[repr(i8)]
|
||||
enum O {
|
||||
o1,
|
||||
o2,
|
||||
o3,
|
||||
o4,
|
||||
}
|
||||
|
||||
#[repr(C, u8)]
|
||||
enum P {
|
||||
P0(u8),
|
||||
P1(u8, u8, u8),
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C" fn root(
|
||||
opaque: *mut Opaque,
|
||||
a: A,
|
||||
b: B,
|
||||
c: C,
|
||||
d: D,
|
||||
e: E,
|
||||
f: F,
|
||||
g: G,
|
||||
h: H,
|
||||
i: I,
|
||||
j: J,
|
||||
k: K,
|
||||
l: L,
|
||||
m: M,
|
||||
n: N,
|
||||
o: O,
|
||||
p: P,
|
||||
) {
|
||||
}
|
||||
Reference in New Issue
Block a user