witx_codegen/weet/
struct.rs

1use std::io::Write;
2
3use super::*;
4
5impl WeetGenerator {
6    pub fn define_as_struct<T: Write>(
7        w: &mut PrettyWriter<T>,
8        name: &str,
9        members: &[ASStructMember],
10    ) -> Result<(), Error> {
11        w.write_line(format!("record {} {{", name.as_type()))?;
12        {
13            let mut w = w.new_block();
14            for member in members {
15                let member_type = member.type_.as_ref();
16                w.write_line(format!(
17                    "{}: {},",
18                    member.name.as_var(),
19                    member_type.as_lang()
20                ))?;
21            }
22        }
23        w.write_line("};")?.eob()?;
24        Ok(())
25    }
26}