Coverage Report

Created: 2025-09-27 06:27

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/WasmEdge/include/host/wasi/wasimodule.h
Line
Count
Source
1
// SPDX-License-Identifier: Apache-2.0
2
// SPDX-FileCopyrightText: 2019-2024 Second State INC
3
4
#pragma once
5
6
#include "host/wasi/environ.h"
7
#include "runtime/instance/module.h"
8
9
namespace WasmEdge {
10
namespace Host {
11
12
class WasiModule : public Runtime::Instance::ModuleInstance {
13
public:
14
  WasiModule();
15
16
0
  __wasi_exitcode_t getExitCode() const noexcept { return Env.getExitCode(); }
17
18
  void init(Span<const std::string> Dirs, const std::string &ProgramName,
19
            Span<const std::string> Args,
20
0
            Span<const std::string> Envs) noexcept {
21
0
    Env.init(Dirs, ProgramName, Args, Envs);
22
0
  }
23
24
0
  WASI::WasiExpect<uint64_t> getNativeHandler(__wasi_fd_t Fd) const noexcept {
25
0
    return Env.getNativeHandler(Fd);
26
0
  }
27
28
  WASI::WasiExpect<void>
29
  initWithFds(Span<const std::string> Dirs, std::string ProgramName,
30
              Span<const std::string> Args, Span<const std::string> Envs,
31
0
              int32_t StdInFd, int32_t StdOutFd, int32_t StdErrFd) {
32
0
    return Env.initWithFds(Dirs, ProgramName, Args, Envs, StdInFd, StdOutFd,
33
0
                           StdErrFd);
34
0
  }
35
36
0
  const WASI::Environ *getEnv() const noexcept { return &Env; }
37
38
private:
39
  WASI::Environ Env;
40
};
41
42
} // namespace Host
43
} // namespace WasmEdge