oxilean_codegen/ffi_bridge/
ffienumdef_traits.rs1use crate::lcnf::*;
12
13use super::types::FfiEnumDef;
14use std::fmt;
15
16impl std::fmt::Display for FfiEnumDef {
17 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
18 let ty = if let Some(t) = &self.underlying_type {
19 format!(" : {}", t)
20 } else {
21 String::new()
22 };
23 writeln!(f, "enum {}{} {{", self.name, ty)?;
24 for (n, v) in &self.variants {
25 if let Some(val) = v {
26 writeln!(f, " {} = {},", n, val)?;
27 } else {
28 writeln!(f, " {},", n)?;
29 }
30 }
31 write!(f, "}};")
32 }
33}