1 pub mod http; 2 pub mod nn; 3 pub mod preview1; 4 pub mod sockets; 5 pub mod tls; 6 7 wit_bindgen::generate!({ 8 inline: " 9 package wasmtime:test; 10 11 world test { 12 include wasi:cli/imports@0.2.3; 13 include wasi:http/imports@0.2.3; 14 include wasi:config/imports@0.2.0-draft; 15 include wasi:keyvalue/imports@0.2.0-draft; 16 include wasi:tls/imports@0.2.0-draft; 17 } 18 ", 19 path: [ 20 "../wasi-http/wit", 21 "../wasi-config/wit", 22 "../wasi-keyvalue/wit", 23 "../wasi-tls/wit/deps/tls", 24 ], 25 world: "wasmtime:test/test", 26 features: ["cli-exit-with-code", "tls"], 27 generate_all, 28 }); 29 30 pub mod proxy { 31 wit_bindgen::generate!({ 32 path: "../wasi-http/wit", 33 world: "wasi:http/proxy", 34 default_bindings_module: "test_programs::proxy", 35 pub_export_macro: true, 36 with: { 37 "wasi:http/types@0.2.3": crate::wasi::http::types, 38 "wasi:http/outgoing-handler@0.2.3": crate::wasi::http::outgoing_handler, 39 "wasi:random/random@0.2.3": crate::wasi::random::random, 40 "wasi:io/error@0.2.3": crate::wasi::io::error, 41 "wasi:io/poll@0.2.3": crate::wasi::io::poll, 42 "wasi:io/streams@0.2.3": crate::wasi::io::streams, 43 "wasi:cli/stdout@0.2.3": crate::wasi::cli::stdout, 44 "wasi:cli/stderr@0.2.3": crate::wasi::cli::stderr, 45 "wasi:cli/stdin@0.2.3": crate::wasi::cli::stdin, 46 "wasi:clocks/monotonic-clock@0.2.3": crate::wasi::clocks::monotonic_clock, 47 "wasi:clocks/wall-clock@0.2.3": crate::wasi::clocks::wall_clock, 48 }, 49 }); 50 } 51 52 impl std::fmt::Display for wasi::io::error::Error { 53 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { 54 f.write_str(&self.to_debug_string()) 55 } 56 } 57 58 impl std::error::Error for wasi::io::error::Error {} 59