Coverage Report

Created: 2026-11-12 06:35

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/WasmEdge/lib/loader/ast/component/component_value.cpp
Line
Count
Source
1
// SPDX-License-Identifier: Apache-2.0
2
// SPDX-FileCopyrightText: 2019-2024 Second State INC
3
4
#include "loader/loader.h"
5
6
namespace WasmEdge {
7
namespace Loader {
8
9
46.4k
Expect<void> Loader::loadValue(AST::Component::Value &V) {
10
  // value ::= t:<valtype> len:<core:u32> v:<val(t)> => (value t v)
11
  //           (where len = ||v||)
12
46.4k
  EXPECTED_TRY(loadType(V.getType()).map_error([this](auto E) {
13
46.3k
    return logLoadError(E, FMgr.getLastOffset(), ASTNodeAttr::Comp_Sec_Value);
14
46.3k
  }));
15
92.6k
  EXPECTED_TRY(uint32_t Len, FMgr.readU32().map_error([this](auto E) {
16
92.6k
    return logLoadError(E, FMgr.getLastOffset(), ASTNodeAttr::Comp_Sec_Value);
17
92.6k
  }));
18
92.6k
  EXPECTED_TRY(V.getData(), FMgr.readBytes(Len).map_error([this](auto E) {
19
46.2k
    return logLoadError(E, FMgr.getLastOffset(), ASTNodeAttr::Comp_Sec_Value);
20
46.2k
  }));
21
46.2k
  return {};
22
92.6k
}
23
24
} // namespace Loader
25
} // namespace WasmEdge