Finalize Bindings

This commit is contained in:
Rune
2026-01-29 19:12:36 +01:00
parent fb9601fcc6
commit a369ab2dc0
12 changed files with 8201 additions and 2 deletions

83
CXString.bf Normal file
View File

@@ -0,0 +1,83 @@
// This file was auto-generated by Cpp2Beef
using System;
using System.Interop;
namespace LibClang;
static
{
/*===-- 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. *|
|* *|
\*===----------------------------------------------------------------------===*/
}
/**
* \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.
*/
[CRepr] public struct CXString {
public void* data;
public c_uint private_flags;
}
[CRepr] public struct CXStringSet {
public CXString* Strings;
public c_uint Count;
}
extension Clang
{
/**
* Retrieve the character data associated with the given string.
*/
[Import(Clang.dll)] [LinkName("clang_getCString")] public static extern c_char* GetCString(CXString string);
/**
* Free the given string.
*/
[Import(Clang.dll)] [LinkName("clang_disposeString")] public static extern void DisposeString(CXString string);
/**
* Free the given string set.
*/
[Import(Clang.dll)] [LinkName("clang_disposeStringSet")] public static extern void DisposeStringSet(CXStringSet* set);
}
/**
* @}
*/