1 /**************************************************************************** 2 * 3 * fterrors.c 4 * 5 * FreeType API for error code handling. 6 * 7 * Copyright (C) 2018-2020 by 8 * Armin Hasitzka, David Turner, Robert Wilhelm, and Werner Lemberg. 9 * 10 * This file is part of the FreeType project, and may only be used, 11 * modified, and distributed under the terms of the FreeType project 12 * license, LICENSE.TXT. By continuing to use, modify, or distribute 13 * this file you indicate that you have read the license and 14 * understand and accept it fully. 15 * 16 */ 17 18 19 #include <freetype/internal/ftdebug.h> 20 #include <freetype/fterrors.h> 21 22 23 /* documentation is in fterrors.h */ 24 25 FT_EXPORT_DEF( const char* ) FT_Error_String(FT_Error error_code)26 FT_Error_String( FT_Error error_code ) 27 { 28 if ( error_code < 0 || 29 error_code >= FT_ERR_CAT( FT_ERR_PREFIX, Max ) ) 30 return NULL; 31 32 #if defined( FT_CONFIG_OPTION_ERROR_STRINGS ) || \ 33 defined( FT_DEBUG_LEVEL_ERROR ) 34 35 #undef FTERRORS_H_ 36 #define FT_ERROR_START_LIST switch ( FT_ERROR_BASE( error_code ) ) { 37 #define FT_ERRORDEF( e, v, s ) case v: return s; 38 #define FT_ERROR_END_LIST } 39 40 #include <freetype/fterrors.h> 41 42 #endif /* defined( FT_CONFIG_OPTION_ERROR_STRINGS ) || ... */ 43 44 return NULL; 45 } 46