1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// Copyright (c) 2017-2021 Fabian Schuiki //! Facilities to emit a module as CIRCT IR. use crate::ir::Module; mod writer; /// Emit CIRCT IR for a module. pub fn write_module(sink: impl std::io::Write, module: &Module) { writer::Writer::new(sink).write_module(module).unwrap(); } /// Emit CIRCT IR for a module as string. pub fn write_module_string(module: &Module) -> String { let mut asm = vec![]; write_module(&mut asm, &module); String::from_utf8(asm).expect("writer should emit proper utf8") }