1*67e74705SXin Li /*===-- clang-c/CXErrorCode.h - C Index Error Codes --------------*- C -*-===*\ 2*67e74705SXin Li |* *| 3*67e74705SXin Li |* The LLVM Compiler Infrastructure *| 4*67e74705SXin Li |* *| 5*67e74705SXin Li |* This file is distributed under the University of Illinois Open Source *| 6*67e74705SXin Li |* License. See LICENSE.TXT for details. *| 7*67e74705SXin Li |* *| 8*67e74705SXin Li |*===----------------------------------------------------------------------===*| 9*67e74705SXin Li |* *| 10*67e74705SXin Li |* This header provides the CXErrorCode enumerators. *| 11*67e74705SXin Li |* *| 12*67e74705SXin Li \*===----------------------------------------------------------------------===*/ 13*67e74705SXin Li 14*67e74705SXin Li #ifndef LLVM_CLANG_C_CXERRORCODE_H 15*67e74705SXin Li #define LLVM_CLANG_C_CXERRORCODE_H 16*67e74705SXin Li 17*67e74705SXin Li #include "clang-c/Platform.h" 18*67e74705SXin Li 19*67e74705SXin Li #ifdef __cplusplus 20*67e74705SXin Li extern "C" { 21*67e74705SXin Li #endif 22*67e74705SXin Li 23*67e74705SXin Li /** 24*67e74705SXin Li * \brief Error codes returned by libclang routines. 25*67e74705SXin Li * 26*67e74705SXin Li * Zero (\c CXError_Success) is the only error code indicating success. Other 27*67e74705SXin Li * error codes, including not yet assigned non-zero values, indicate errors. 28*67e74705SXin Li */ 29*67e74705SXin Li enum CXErrorCode { 30*67e74705SXin Li /** 31*67e74705SXin Li * \brief No error. 32*67e74705SXin Li */ 33*67e74705SXin Li CXError_Success = 0, 34*67e74705SXin Li 35*67e74705SXin Li /** 36*67e74705SXin Li * \brief A generic error code, no further details are available. 37*67e74705SXin Li * 38*67e74705SXin Li * Errors of this kind can get their own specific error codes in future 39*67e74705SXin Li * libclang versions. 40*67e74705SXin Li */ 41*67e74705SXin Li CXError_Failure = 1, 42*67e74705SXin Li 43*67e74705SXin Li /** 44*67e74705SXin Li * \brief libclang crashed while performing the requested operation. 45*67e74705SXin Li */ 46*67e74705SXin Li CXError_Crashed = 2, 47*67e74705SXin Li 48*67e74705SXin Li /** 49*67e74705SXin Li * \brief The function detected that the arguments violate the function 50*67e74705SXin Li * contract. 51*67e74705SXin Li */ 52*67e74705SXin Li CXError_InvalidArguments = 3, 53*67e74705SXin Li 54*67e74705SXin Li /** 55*67e74705SXin Li * \brief An AST deserialization error has occurred. 56*67e74705SXin Li */ 57*67e74705SXin Li CXError_ASTReadError = 4 58*67e74705SXin Li }; 59*67e74705SXin Li 60*67e74705SXin Li #ifdef __cplusplus 61*67e74705SXin Li } 62*67e74705SXin Li #endif 63*67e74705SXin Li #endif 64*67e74705SXin Li 65