MCPcopy Create free account
hub / github.com/WasmEdge/WasmEdge / loadCoreAlias

Method loadCoreAlias

lib/loader/ast/component/component_alias.cpp:9–27  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

7namespace Loader {
8
9Expect<void> Loader::loadCoreAlias(AST::Component::CoreAlias &Alias) {
10 auto ReportError = [this](auto E) {
11 return logLoadError(E, FMgr.getLastOffset(), ASTNodeAttr::Comp_Alias);
12 };
13 // core:alias ::= s:<core:sort> t:<core:aliastarget> => (alias t (s))
14 // core:aliastarget ::= 0x01 ct:<u32> idx:<u32> => outer ct idx
15
16 EXPECTED_TRY(loadCoreSort(Alias.getSort()).map_error(ReportError));
17 EXPECTED_TRY(uint8_t Flag, FMgr.readByte().map_error(ReportError));
18 if (Flag != 0x01) {
19 return logLoadError(ErrCode::Value::MalformedAliasTarget,
20 FMgr.getLastOffset(), ASTNodeAttr::Comp_Alias);
21 }
22 EXPECTED_TRY(uint32_t Ct, FMgr.readU32().map_error(ReportError));
23 EXPECTED_TRY(uint32_t Idx, FMgr.readU32().map_error(ReportError));
24 Alias.setComponentJump(Ct);
25 Alias.setIndex(Idx);
26 return {};
27}
28
29Expect<void> Loader::loadAlias(AST::Component::Alias &Alias) {
30 auto ReportError = [this](auto E) {

Callers

nothing calls this directly

Calls 4

getLastOffsetMethod · 0.80
setComponentJumpMethod · 0.80
EXPECTED_TRYFunction · 0.70
setIndexMethod · 0.45

Tested by

no test coverage detected