xref: /freebsd/contrib/llvm-project/clang/include/clang-c/CXErrorCode.h (revision 5b27928474e6a4103d65b347544705c40c9618fd)
1 /*===-- clang-c/CXErrorCode.h - C Index Error Codes  --------------*- C -*-===*\
2 |*                                                                            *|
3 |* Part of the LLVM Project, under the Apache License v2.0 with LLVM          *|
4 |* Exceptions.                                                                *|
5 |* See https://llvm.org/LICENSE.txt for license information.                  *|
6 |* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    *|
7 |*                                                                            *|
8 |*===----------------------------------------------------------------------===*|
9 |*                                                                            *|
10 |* This header provides the CXErrorCode enumerators.                          *|
11 |*                                                                            *|
12 \*===----------------------------------------------------------------------===*/
13 
14 #ifndef LLVM_CLANG_C_CXERRORCODE_H
15 #define LLVM_CLANG_C_CXERRORCODE_H
16 
17 #include "clang-c/ExternC.h"
18 #include "clang-c/Platform.h"
19 
20 LLVM_CLANG_C_EXTERN_C_BEGIN
21 
22 /**
23  * Error codes returned by libclang routines.
24  *
25  * Zero (\c CXError_Success) is the only error code indicating success.  Other
26  * error codes, including not yet assigned non-zero values, indicate errors.
27  */
28 enum CXErrorCode {
29   /**
30    * No error.
31    */
32   CXError_Success = 0,
33 
34   /**
35    * A generic error code, no further details are available.
36    *
37    * Errors of this kind can get their own specific error codes in future
38    * libclang versions.
39    */
40   CXError_Failure = 1,
41 
42   /**
43    * libclang crashed while performing the requested operation.
44    */
45   CXError_Crashed = 2,
46 
47   /**
48    * The function detected that the arguments violate the function
49    * contract.
50    */
51   CXError_InvalidArguments = 3,
52 
53   /**
54    * An AST deserialization error has occurred.
55    */
56   CXError_ASTReadError = 4
57 };
58 
59 LLVM_CLANG_C_EXTERN_C_END
60 
61 #endif
62 
63