summaryrefslogtreecommitdiffstats
path: root/tests/rust/display_list.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rust/display_list.rs')
-rw-r--r--tests/rust/display_list.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/rust/display_list.rs b/tests/rust/display_list.rs
new file mode 100644
index 0000000..3b4a78a
--- /dev/null
+++ b/tests/rust/display_list.rs
@@ -0,0 +1,18 @@
+#[repr(u8)]
+pub enum DisplayItem {
+ Fill(Rect, Color),
+ Image { id: u32, bounds: Rect },
+ ClearScreen,
+}
+
+#[repr(C)]
+pub struct Rect { x: f32, y: f32, w: f32, h: f32 }
+
+#[repr(C)]
+pub struct Color { r: u8, g: u8, b: u8, a: u8 }
+
+#[no_mangle]
+pub extern "C" fn push_item(item: DisplayItem) -> bool {
+ ::std::mem::drop(item);
+ true
+}