LMMC
Lamina Mathematic core
载入中...
搜索中...
未找到
status.c
浏览该文件的文档.
1
5#include "lmmc/config.h"
6#include "lmmc/status.h"
7
8const char* lmmc_status_string(lmmc_status_t status) {
9 static const char* const names[] = {
10 [LMMC_STATUS_OK] = "ok",
11 [LMMC_STATUS_INVALID_ARGUMENT] = "invalid argument",
12 [LMMC_STATUS_DIMENSION_MISMATCH] = "dimension mismatch",
13 [LMMC_STATUS_ALLOCATION_FAILED] = "allocation failed",
14 [LMMC_STATUS_SINGULAR_MATRIX] = "singular matrix",
15 [LMMC_STATUS_NOT_IMPLEMENTED] = "not implemented",
16 [LMMC_STATUS_NUMERICAL_FAILURE] = "numerical failure",
17 [LMMC_STATUS_NOT_POSITIVE_DEFINITE] = "not positive definite",
18 [LMMC_STATUS_CONVERGENCE_FAILED] = "convergence failed",
19 [LMMC_STATUS_OUT_OF_RANGE] = "out of range",
20 [LMMC_STATUS_INDEX_OUT_OF_BOUNDS] = "index out of bounds",
21 [LMMC_STATUS_WARNING_MAX_DEPTH] = "warning: max depth reached",
22 [LMMC_STATUS_EMPTY_INPUT] = "empty input",
23 [LMMC_STATUS_UNIT_STRIP_TYPE_MISMATCH] = "unit strip type mismatch",
24 [LMMC_STATUS_UNIT_STRIP_OVERFLOW] = "unit strip overflow",
25 [LMMC_STATUS_UNIT_STRIP_INVALID] = "unit strip invalid",
26 [LMMC_STATUS_UNIT_STRIP_LEGACY_SYNTAX] = "unit strip legacy syntax",
27 [LMMC_STATUS_NOT_INITIALIZED] = "not initialized",
28 [LMMC_STATUS_BUSY] = "busy",
29 [LMMC_STATUS_REFERENCE_LIMIT] = "reference limit"
30 };
31 if ((unsigned int)status >= sizeof(names) / sizeof(names[0])) return "unknown";
32 return names[status];
33}
LMMC binary real type and arithmetic spelling.
LMMC 通用状态码定义.
lmmc_status_t
LMMC 库统一返回的状态码.
@ LMMC_STATUS_CONVERGENCE_FAILED
@ LMMC_STATUS_UNIT_STRIP_TYPE_MISMATCH
@ LMMC_STATUS_UNIT_STRIP_LEGACY_SYNTAX
@ LMMC_STATUS_REFERENCE_LIMIT
@ LMMC_STATUS_OK
@ LMMC_STATUS_NUMERICAL_FAILURE
@ LMMC_STATUS_NOT_POSITIVE_DEFINITE
@ LMMC_STATUS_DIMENSION_MISMATCH
@ LMMC_STATUS_BUSY
@ LMMC_STATUS_ALLOCATION_FAILED
@ LMMC_STATUS_SINGULAR_MATRIX
@ LMMC_STATUS_NOT_IMPLEMENTED
@ LMMC_STATUS_UNIT_STRIP_INVALID
@ LMMC_STATUS_NOT_INITIALIZED
@ LMMC_STATUS_INVALID_ARGUMENT
@ LMMC_STATUS_OUT_OF_RANGE
@ LMMC_STATUS_INDEX_OUT_OF_BOUNDS
@ LMMC_STATUS_EMPTY_INPUT
@ LMMC_STATUS_WARNING_MAX_DEPTH
@ LMMC_STATUS_UNIT_STRIP_OVERFLOW
const char * lmmc_status_string(lmmc_status_t status)
获取状态码对应的可读字符串.
定义 status.c:8