Coverage for tests/codegen/generated/export_resources/exports/my_interface_name.py: 51%
37 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-02-20 16:25 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-02-20 16:25 +0000
1from ..intrinsics import _decode_utf8, _encode_utf8, _load
2import ctypes
3from typing import Protocol, Type
4import wasmtime
6from typing import TYPE_CHECKING
7if TYPE_CHECKING:
8 from .. import Root
10class DemoResourceClass(Protocol):
11 def __init__(self, caller: wasmtime.Store, name: str) -> None: ...
12 def greet(self, caller: wasmtime.Store, greeting: str) -> str: ...
15class MyInterfaceName:
16 component: 'Root'
18 def __init__(self, component: 'Root') -> None:
19 self.component = component
20 self.DemoResourceClass = _create_demo_resource_class(component)
23def _create_demo_resource_class(component: 'Root') -> Type[DemoResourceClass]:
24 class _DemoResourceClass:
25 def __init__(self, caller: wasmtime.Store, name: str) -> None:
26 self.component = component
27 ptr, len0 = _encode_utf8(name, self.component._realloc0, self.component._core_memory0, caller)
28 ret = self.component.lift_callee0(caller, ptr, len0)
29 assert(isinstance(ret, int))
30 entry = self.component._handle_remove_0(ret)
31 self._rep = entry[0]
32 def greet(self, caller: wasmtime.Store, greeting: str) -> str:
33 rep = self._rep
34 ptr, len0 = _encode_utf8(greeting, self.component._realloc0, self.component._core_memory0, caller)
35 ret = self.component.lift_callee1(caller, rep, ptr, len0)
36 assert(isinstance(ret, int))
37 load = _load(ctypes.c_int32, self.component._core_memory0, caller, ret, 0)
38 load1 = _load(ctypes.c_int32, self.component._core_memory0, caller, ret, 4)
39 ptr2 = load
40 len3 = load1
41 list = _decode_utf8(self.component._core_memory0, caller, ptr2, len3)
42 tmp = list
43 return tmp
44 return _DemoResourceClass