- /*===-- clang-c/CXString.h - C Index strings  --------------------*- C -*-===*\ 
- |*                                                                            *| 
- |* Part of the LLVM Project, under the Apache License v2.0 with LLVM          *| 
- |* Exceptions.                                                                *| 
- |* See https://llvm.org/LICENSE.txt for license information.                  *| 
- |* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    *| 
- |*                                                                            *| 
- |*===----------------------------------------------------------------------===*| 
- |*                                                                            *| 
- |* This header provides the interface to C Index strings.                     *| 
- |*                                                                            *| 
- \*===----------------------------------------------------------------------===*/ 
-   
- #ifndef LLVM_CLANG_C_CXSTRING_H 
- #define LLVM_CLANG_C_CXSTRING_H 
-   
- #include "clang-c/ExternC.h" 
- #include "clang-c/Platform.h" 
-   
- LLVM_CLANG_C_EXTERN_C_BEGIN 
-   
- /** 
-  * \defgroup CINDEX_STRING String manipulation routines 
-  * \ingroup CINDEX 
-  * 
-  * @{ 
-  */ 
-   
- /** 
-  * A character string. 
-  * 
-  * The \c CXString type is used to return strings from the interface when 
-  * the ownership of that string might differ from one call to the next. 
-  * Use \c clang_getCString() to retrieve the string data and, once finished 
-  * with the string data, call \c clang_disposeString() to free the string. 
-  */ 
- typedef struct { 
-   const void *data; 
-   unsigned private_flags; 
- } CXString; 
-   
- typedef struct { 
-   CXString *Strings; 
-   unsigned Count; 
- } CXStringSet; 
-   
- /** 
-  * Retrieve the character data associated with the given string. 
-  */ 
- CINDEX_LINKAGE const char *clang_getCString(CXString string); 
-   
- /** 
-  * Free the given string. 
-  */ 
- CINDEX_LINKAGE void clang_disposeString(CXString string); 
-   
- /** 
-  * Free the given string set. 
-  */ 
- CINDEX_LINKAGE void clang_disposeStringSet(CXStringSet *set); 
-   
- /** 
-  * @} 
-  */ 
-   
- LLVM_CLANG_C_EXTERN_C_END 
-   
- #endif 
-   
-