1 #include "base.h" 2 3 extern "C" { 4 5 const char *marisa_alpha_strerror(marisa_alpha_status status) { 6 #define MARISA_ALPHA_STRERROR_CASE(x) case x: { return #x; } 7 switch (status) { 8 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_OK) 9 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_HANDLE_ERROR) 10 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_STATE_ERROR) 11 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_PARAM_ERROR) 12 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_SIZE_ERROR) 13 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_MEMORY_ERROR) 14 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_IO_ERROR) 15 MARISA_ALPHA_STRERROR_CASE(MARISA_ALPHA_UNEXPECTED_ERROR) 16 } 17 return "MARISA_ALPHA_UNKNOWN_ERROR"; 18 #undef MARISA_ALPHA_STRERROR_CASE 19 } 20 21 } // extern "C" 22