MCPcopy Create free account
hub / github.com/bytecodealliance/wit-bindgen / import_funcs

Method import_funcs

crates/c/src/lib.rs:235–255  ·  view source on GitHub ↗
(
        &mut self,
        resolve: &Resolve,
        world: WorldId,
        funcs: &[(&str, &Function)],
        _files: &mut Files,
    )

Source from the content-addressed store, hash-verified

233 }
234
235 fn import_funcs(
236 &mut self,
237 resolve: &Resolve,
238 world: WorldId,
239 funcs: &[(&str, &Function)],
240 _files: &mut Files,
241 ) {
242 let name = &resolve.worlds[world].name;
243 let mut r#gen = self.interface(resolve, true, Some("$root"));
244 r#gen.define_function_types(funcs);
245
246 for (i, (_name, func)) in funcs.iter().enumerate() {
247 if i == 0 {
248 uwriteln!(r#gen.src.h_fns, "\n// Imported Functions from `{name}`");
249 uwriteln!(r#gen.src.c_fns, "\n// Imported Functions from `{name}`");
250 }
251 r#gen.import(None, func);
252 }
253
254 r#gen.r#gen.src.append(&r#gen.src);
255 }
256
257 fn export_interface(
258 &mut self,

Callers 1

generateMethod · 0.45

Calls 5

define_function_typesMethod · 0.80
appendMethod · 0.80
interfaceMethod · 0.45
iterMethod · 0.45
importMethod · 0.45

Tested by

no test coverage detected