/src/WasmEdge/include/common/errcode.h
Line | Count | Source |
1 | | // SPDX-License-Identifier: Apache-2.0 |
2 | | // SPDX-FileCopyrightText: Copyright The WasmEdge Authors |
3 | | |
4 | | //===-- wasmedge/common/errcode.h - Error code definition -----------------===// |
5 | | // |
6 | | // Part of the WasmEdge Project. |
7 | | // |
8 | | //===----------------------------------------------------------------------===// |
9 | | /// |
10 | | /// \file |
11 | | /// This file contains the `Expected` wrappers. |
12 | | /// |
13 | | //===----------------------------------------------------------------------===// |
14 | | #pragma once |
15 | | |
16 | | #include "common/enum_errcode.hpp" |
17 | | #include "common/expected.h" |
18 | | #include "common/fmt.h" |
19 | | #include "common/hexstr.h" |
20 | | #include "common/spdlog.h" |
21 | | |
22 | | #include <cassert> |
23 | | #include <ostream> |
24 | | |
25 | | #if defined(_MSC_VER) && !defined(__clang__) |
26 | | #define __builtin_unreachable() __assume(0) |
27 | | #endif |
28 | | |
29 | | #ifdef NDEBUG |
30 | | #define assuming(R) \ |
31 | 641M | (static_cast<bool>(R) ? static_cast<void>(0) : __builtin_unreachable()) |
32 | 0 | #define assumingUnreachable() __builtin_unreachable() |
33 | | #else |
34 | | #define assuming(expr) assert(expr) |
35 | | #define assumingUnreachable() \ |
36 | | (assert(false && "unreachable"), __builtin_unreachable()) |
37 | | #endif |
38 | | |
39 | | namespace WasmEdge { |
40 | | |
41 | 358M | static inline constexpr bool likely(bool V) noexcept { |
42 | 358M | return __builtin_expect(V, true); |
43 | 358M | } component.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 730k | static inline constexpr bool likely(bool V) noexcept { | 42 | 730k | return __builtin_expect(V, true); | 43 | 730k | } |
loader.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 87.3k | static inline constexpr bool likely(bool V) noexcept { | 42 | 87.3k | return __builtin_expect(V, true); | 43 | 87.3k | } |
component_section.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 2.41M | static inline constexpr bool likely(bool V) noexcept { | 42 | 2.41M | return __builtin_expect(V, true); | 43 | 2.41M | } |
component_instance.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 139k | static inline constexpr bool likely(bool V) noexcept { | 42 | 139k | return __builtin_expect(V, true); | 43 | 139k | } |
component_sort.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 149k | static inline constexpr bool likely(bool V) noexcept { | 42 | 149k | return __builtin_expect(V, true); | 43 | 149k | } |
component_alias.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 36.1k | static inline constexpr bool likely(bool V) noexcept { | 42 | 36.1k | return __builtin_expect(V, true); | 43 | 36.1k | } |
component_canonical.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 105k | static inline constexpr bool likely(bool V) noexcept { | 42 | 105k | return __builtin_expect(V, true); | 43 | 105k | } |
component_start.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 77.1k | static inline constexpr bool likely(bool V) noexcept { | 42 | 77.1k | return __builtin_expect(V, true); | 43 | 77.1k | } |
component_type.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 1.42M | static inline constexpr bool likely(bool V) noexcept { | 42 | 1.42M | return __builtin_expect(V, true); | 43 | 1.42M | } |
component_import.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 13.7k | static inline constexpr bool likely(bool V) noexcept { | 42 | 13.7k | return __builtin_expect(V, true); | 43 | 13.7k | } |
component_export.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 9.02k | static inline constexpr bool likely(bool V) noexcept { | 42 | 9.02k | return __builtin_expect(V, true); | 43 | 9.02k | } |
component_declarator.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 98.0k | static inline constexpr bool likely(bool V) noexcept { | 42 | 98.0k | return __builtin_expect(V, true); | 43 | 98.0k | } |
component_descriptor.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 32.4k | static inline constexpr bool likely(bool V) noexcept { | 42 | 32.4k | return __builtin_expect(V, true); | 43 | 32.4k | } |
component_valtype.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 64.8k | static inline constexpr bool likely(bool V) noexcept { | 42 | 64.8k | return __builtin_expect(V, true); | 43 | 64.8k | } |
module.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 89.6k | static inline constexpr bool likely(bool V) noexcept { | 42 | 89.6k | return __builtin_expect(V, true); | 43 | 89.6k | } |
section.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 6.55M | static inline constexpr bool likely(bool V) noexcept { | 42 | 6.55M | return __builtin_expect(V, true); | 43 | 6.55M | } |
description.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 147k | static inline constexpr bool likely(bool V) noexcept { | 42 | 147k | return __builtin_expect(V, true); | 43 | 147k | } |
segment.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 624k | static inline constexpr bool likely(bool V) noexcept { | 42 | 624k | return __builtin_expect(V, true); | 43 | 624k | } |
type.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 446k | static inline constexpr bool likely(bool V) noexcept { | 42 | 446k | return __builtin_expect(V, true); | 43 | 446k | } |
Unexecuted instantiation: expression.cpp:WasmEdge::likely(bool) instruction.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 130M | static inline constexpr bool likely(bool V) noexcept { | 42 | 130M | return __builtin_expect(V, true); | 43 | 130M | } |
Unexecuted instantiation: serial_module.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_section.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_segment.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_type.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_description.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_expression.cpp:WasmEdge::likely(bool) Unexecuted instantiation: serial_instruction.cpp:WasmEdge::likely(bool) filemgr.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 65.5M | static inline constexpr bool likely(bool V) noexcept { | 42 | 65.5M | return __builtin_expect(V, true); | 43 | 65.5M | } |
Unexecuted instantiation: shared_library.cpp:WasmEdge::likely(bool) Unexecuted instantiation: aot_section.cpp:WasmEdge::likely(bool) validator.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 138M | static inline constexpr bool likely(bool V) noexcept { | 42 | 138M | return __builtin_expect(V, true); | 43 | 138M | } |
component_validator.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 1.68M | static inline constexpr bool likely(bool V) noexcept { | 42 | 1.68M | return __builtin_expect(V, true); | 43 | 1.68M | } |
component_name.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 70 | static inline constexpr bool likely(bool V) noexcept { | 42 | 70 | return __builtin_expect(V, true); | 43 | 70 | } |
formchecker.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 6.29M | static inline constexpr bool likely(bool V) noexcept { | 42 | 6.29M | return __builtin_expect(V, true); | 43 | 6.29M | } |
Unexecuted instantiation: component_context.cpp:WasmEdge::likely(bool) Unexecuted instantiation: allocator.cpp:WasmEdge::likely(bool) Unexecuted instantiation: wasmedge.cpp:WasmEdge::likely(bool) Unexecuted instantiation: wasmedge_compat.cpp:WasmEdge::likely(bool) Unexecuted instantiation: fuzzTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: fuzzPO.cpp:WasmEdge::likely(bool) Unexecuted instantiation: uniTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: validateTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: parseTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: instantiateTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: toolConfig.cpp:WasmEdge::likely(bool) Unexecuted instantiation: compilerTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: runtimeTool.cpp:WasmEdge::likely(bool) Unexecuted instantiation: vm.cpp:WasmEdge::likely(bool) Unexecuted instantiation: plugin_modules.cpp:WasmEdge::likely(bool) Unexecuted instantiation: plugin.cpp:WasmEdge::likely(bool) Unexecuted instantiation: func.cpp:WasmEdge::likely(bool) Unexecuted instantiation: argument_parser.cpp:WasmEdge::likely(bool) Unexecuted instantiation: proxy.cpp:WasmEdge::likely(bool) Unexecuted instantiation: threadInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: refInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: engine.cpp:WasmEdge::likely(bool) Unexecuted instantiation: helper.cpp:WasmEdge::likely(bool) Unexecuted instantiation: executor.cpp:WasmEdge::likely(bool) Unexecuted instantiation: coredump.cpp:WasmEdge::likely(bool) Unexecuted instantiation: component_canon.cpp:WasmEdge::likely(bool) Unexecuted instantiation: component_module.cpp:WasmEdge::likely(bool) Unexecuted instantiation: controlInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: tableInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: memoryInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: variableInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: import.cpp:WasmEdge::likely(bool) Unexecuted instantiation: function.cpp:WasmEdge::likely(bool) Unexecuted instantiation: global.cpp:WasmEdge::likely(bool) Unexecuted instantiation: table.cpp:WasmEdge::likely(bool) Unexecuted instantiation: memory.cpp:WasmEdge::likely(bool) Unexecuted instantiation: elem.cpp:WasmEdge::likely(bool) Unexecuted instantiation: data.cpp:WasmEdge::likely(bool) Unexecuted instantiation: export.cpp:WasmEdge::likely(bool) Unexecuted instantiation: tag.cpp:WasmEdge::likely(bool) Unexecuted instantiation: environ.cpp:WasmEdge::likely(bool) Unexecuted instantiation: vinode.cpp:WasmEdge::likely(bool) Unexecuted instantiation: wasimodule.cpp:WasmEdge::likely(bool) Unexecuted instantiation: inode-linux.cpp:WasmEdge::likely(bool) Unexecuted instantiation: wasifunc.cpp:WasmEdge::likely(bool) Unexecuted instantiation: clock-linux.cpp:WasmEdge::likely(bool) Unexecuted instantiation: environ-linux.cpp:WasmEdge::likely(bool) compiler.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 23.2k | static inline constexpr bool likely(bool V) noexcept { | 42 | 23.2k | return __builtin_expect(V, true); | 43 | 23.2k | } |
Unexecuted instantiation: context.cpp:WasmEdge::likely(bool) function_compiler.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 1.49M | static inline constexpr bool likely(bool V) noexcept { | 42 | 1.49M | return __builtin_expect(V, true); | 43 | 1.49M | } |
Unexecuted instantiation: numericInstr.cpp:WasmEdge::likely(bool) Unexecuted instantiation: vectorInstr.cpp:WasmEdge::likely(bool) codegen.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 4.44k | static inline constexpr bool likely(bool V) noexcept { | 42 | 4.44k | return __builtin_expect(V, true); | 43 | 4.44k | } |
Unexecuted instantiation: jit.cpp:WasmEdge::likely(bool) Unexecuted instantiation: lazyjit.cpp:WasmEdge::likely(bool) Unexecuted instantiation: llvm.cpp:WasmEdge::likely(bool) Unexecuted instantiation: fault.cpp:WasmEdge::likely(bool) Unexecuted instantiation: stacktrace.cpp:WasmEdge::likely(bool) hash.cpp:WasmEdge::likely(bool) Line | Count | Source | 41 | 841k | static inline constexpr bool likely(bool V) noexcept { | 42 | 841k | return __builtin_expect(V, true); | 43 | 841k | } |
|
44 | 176M | static inline constexpr bool unlikely(bool V) noexcept { |
45 | 176M | return __builtin_expect(V, false); |
46 | 176M | } component.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 14.9k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 14.9k | return __builtin_expect(V, false); | 46 | 14.9k | } |
Unexecuted instantiation: loader.cpp:WasmEdge::unlikely(bool) component_section.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 425k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 425k | return __builtin_expect(V, false); | 46 | 425k | } |
Unexecuted instantiation: component_instance.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_sort.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_alias.cpp:WasmEdge::unlikely(bool) component_canonical.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 8.65k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 8.65k | return __builtin_expect(V, false); | 46 | 8.65k | } |
Unexecuted instantiation: component_start.cpp:WasmEdge::unlikely(bool) component_type.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 365k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 365k | return __builtin_expect(V, false); | 46 | 365k | } |
Unexecuted instantiation: component_import.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_export.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_declarator.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_descriptor.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_valtype.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: module.cpp:WasmEdge::unlikely(bool) section.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 796k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 796k | return __builtin_expect(V, false); | 46 | 796k | } |
description.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 865 | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 865 | return __builtin_expect(V, false); | 46 | 865 | } |
segment.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 11.5k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 11.5k | return __builtin_expect(V, false); | 46 | 11.5k | } |
type.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 1.02M | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 1.02M | return __builtin_expect(V, false); | 46 | 1.02M | } |
Unexecuted instantiation: expression.cpp:WasmEdge::unlikely(bool) instruction.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 43.5M | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 43.5M | return __builtin_expect(V, false); | 46 | 43.5M | } |
Unexecuted instantiation: serial_module.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_section.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_segment.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_type.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_description.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_expression.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: serial_instruction.cpp:WasmEdge::unlikely(bool) filemgr.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 130M | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 130M | return __builtin_expect(V, false); | 46 | 130M | } |
Unexecuted instantiation: shared_library.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: aot_section.cpp:WasmEdge::unlikely(bool) validator.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 7.11k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 7.11k | return __builtin_expect(V, false); | 46 | 7.11k | } |
Unexecuted instantiation: component_validator.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_name.cpp:WasmEdge::unlikely(bool) formchecker.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 63.3k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 63.3k | return __builtin_expect(V, false); | 46 | 63.3k | } |
Unexecuted instantiation: component_context.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: allocator.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: wasmedge.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: wasmedge_compat.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: fuzzTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: fuzzPO.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: uniTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: validateTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: parseTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: instantiateTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: toolConfig.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: compilerTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: runtimeTool.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: vm.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: plugin_modules.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: plugin.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: func.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: argument_parser.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: proxy.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: threadInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: refInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: engine.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: helper.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: executor.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: coredump.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_canon.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: component_module.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: controlInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: tableInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: memoryInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: variableInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: import.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: function.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: global.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: table.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: memory.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: elem.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: data.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: export.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: tag.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: environ.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: vinode.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: wasimodule.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: inode-linux.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: wasifunc.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: clock-linux.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: environ-linux.cpp:WasmEdge::unlikely(bool) compiler.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 2.23k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 2.23k | return __builtin_expect(V, false); | 46 | 2.23k | } |
Unexecuted instantiation: context.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: function_compiler.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: numericInstr.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: vectorInstr.cpp:WasmEdge::unlikely(bool) codegen.cpp:WasmEdge::unlikely(bool) Line | Count | Source | 44 | 32.8k | static inline constexpr bool unlikely(bool V) noexcept { | 45 | 32.8k | return __builtin_expect(V, false); | 46 | 32.8k | } |
Unexecuted instantiation: jit.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: lazyjit.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: llvm.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: fault.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: stacktrace.cpp:WasmEdge::unlikely(bool) Unexecuted instantiation: hash.cpp:WasmEdge::unlikely(bool) |
47 | | |
48 | | /// Type aliasing for Expected<T, ErrCode>. |
49 | | template <typename T> using Expect = Expected<T, ErrCode>; |
50 | | |
51 | | /// Helper function for Unexpected<ErrCode>. |
52 | 17.9k | constexpr auto Unexpect(const ErrCode &Val) { return Unexpected<ErrCode>(Val); } |
53 | 25.8k | template <typename... ArgsT> constexpr auto Unexpect(ArgsT... Args) { |
54 | 25.8k | return Unexpected<ErrCode>(ErrCode(Args...)); |
55 | 25.8k | } auto WasmEdge::Unexpect<WasmEdge::ErrCode::Value>(WasmEdge::ErrCode::Value) Line | Count | Source | 53 | 25.8k | template <typename... ArgsT> constexpr auto Unexpect(ArgsT... Args) { | 54 | 25.8k | return Unexpected<ErrCode>(ErrCode(Args...)); | 55 | 25.8k | } |
Unexecuted instantiation: auto WasmEdge::Unexpect<WasmEdge::ErrCategory, unsigned int>(WasmEdge::ErrCategory, unsigned int) |
56 | 0 | template <typename T> constexpr auto Unexpect(const Expect<T> &Val) { |
57 | 0 | return Unexpected<ErrCode>(Val.error()); |
58 | 0 | } |
59 | | |
60 | | } // namespace WasmEdge |
61 | | |
62 | | template <> |
63 | | struct fmt::formatter<WasmEdge::ErrCode> : fmt::formatter<std::string_view> { |
64 | | template <typename FmtCtx> |
65 | | auto format(const WasmEdge::ErrCode &Code, |
66 | 15.4k | FmtCtx &Ctx) WASMEDGE_FMT_CONST noexcept -> decltype(Ctx.out()) { |
67 | 15.4k | using namespace std::literals; |
68 | 15.4k | std::string Output = |
69 | 15.4k | fmt::format("{} failed: {}, Code: 0x{:03x}"sv, Code.getErrCodePhase(), |
70 | 15.4k | WasmEdge::ErrCodeStr[Code.getEnum()], Code.getCode()); |
71 | 15.4k | return formatter<std::string_view>::format(Output, Ctx); |
72 | 15.4k | } |
73 | | }; |
74 | | |
75 | | template <> |
76 | | struct fmt::formatter<WasmEdge::ErrCode::Value> |
77 | | : fmt::formatter<WasmEdge::ErrCode> { |
78 | | template <typename FmtCtx> |
79 | | auto format(const WasmEdge::ErrCode::Value &Value, |
80 | 2.66k | FmtCtx &Ctx) WASMEDGE_FMT_CONST noexcept -> decltype(Ctx.out()) { |
81 | 2.66k | return formatter<WasmEdge::ErrCode>::format(WasmEdge::ErrCode(Value), Ctx); |
82 | 2.66k | } |
83 | | }; |