module wasm; import ldc.attributes; enum SprintfType : size_t { None, U8, I8, U16, I16, U32, I32, U64, I64, SizeT, F32, F64, Bool, String, U8Array, I8Array, U16Array, I16Array, U32Array, I32Array, U64Array, I64Array, F32Array, F64Array, Char, CharArray, } extern extern(C) @nogc pure @llvmAttr("wasm-import-module", "env"): @llvmAttr("wasm-import-name", "Console") void Console(string str, bool write_line); @llvmAttr("wasm-import-name", "Abort") void Abort(string message); @llvmAttr("wasm-import-name", "SprintfLoadValue") void SprintfLoadValue(const(void)* ptr, SprintfType type); @llvmAttr("wasm-import-name", "SprintfLoadArray") void SprintfLoadArray(size_t length, const(void)* ptr, SprintfType type); @llvmAttr("wasm-import-name", "SprintfEnd") size_t SprintfEnd(char[] buffer, string format);