blob: caf2392c19e0889f10d9944b08a813b295bcb55d [file] [log] [blame]
// AUTO GENERATED FILE, DO NOT EDIT.
//
// Generated by `package:ffigen`.
import 'dart:ffi' as ffi;
/// Bindings to LibClang.
class LibClang {
/// Holds the symbol lookup function.
final ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName)
_lookup;
/// The symbols are looked up in [dynamicLibrary].
LibClang(ffi.DynamicLibrary dynamicLibrary) : _lookup = dynamicLibrary.lookup;
/// The symbols are looked up with [lookup].
LibClang.fromLookup(
ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName)
lookup)
: _lookup = lookup;
/// Retrieve the character data associated with the given string.
ffi.Pointer<ffi.Int8> clang_getCString(
CXString string,
) {
return _clang_getCString(
string,
);
}
late final _clang_getCString_ptr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function(CXString)>>(
'clang_getCString');
late final _clang_getCString = _clang_getCString_ptr
.asFunction<ffi.Pointer<ffi.Int8> Function(CXString)>();
/// Free the given string.
void clang_disposeString(
CXString string,
) {
return _clang_disposeString(
string,
);
}
late final _clang_disposeString_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXString)>>(
'clang_disposeString');
late final _clang_disposeString =
_clang_disposeString_ptr.asFunction<void Function(CXString)>();
/// Free the given string set.
void clang_disposeStringSet(
ffi.Pointer<CXStringSet> set_1,
) {
return _clang_disposeStringSet(
set_1,
);
}
late final _clang_disposeStringSet_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<CXStringSet>)>>(
'clang_disposeStringSet');
late final _clang_disposeStringSet = _clang_disposeStringSet_ptr
.asFunction<void Function(ffi.Pointer<CXStringSet>)>();
/// Return the timestamp for use with Clang's -fbuild-session-timestamp=
/// option.
int clang_getBuildSessionTimestamp() {
return _clang_getBuildSessionTimestamp();
}
late final _clang_getBuildSessionTimestamp_ptr =
_lookup<ffi.NativeFunction<ffi.Uint64 Function()>>(
'clang_getBuildSessionTimestamp');
late final _clang_getBuildSessionTimestamp =
_clang_getBuildSessionTimestamp_ptr.asFunction<int Function()>();
/// Create a CXVirtualFileOverlay object. Must be disposed with
/// clang_VirtualFileOverlay_dispose().
CXVirtualFileOverlay clang_VirtualFileOverlay_create(
int options,
) {
return _clang_VirtualFileOverlay_create(
options,
);
}
late final _clang_VirtualFileOverlay_create_ptr =
_lookup<ffi.NativeFunction<CXVirtualFileOverlay Function(ffi.Uint32)>>(
'clang_VirtualFileOverlay_create');
late final _clang_VirtualFileOverlay_create =
_clang_VirtualFileOverlay_create_ptr
.asFunction<CXVirtualFileOverlay Function(int)>();
/// Map an absolute virtual file path to an absolute real one. The virtual
/// path must be canonicalized (not contain "."/"..").
int clang_VirtualFileOverlay_addFileMapping(
CXVirtualFileOverlay arg0,
ffi.Pointer<ffi.Int8> virtualPath,
ffi.Pointer<ffi.Int8> realPath,
) {
return _clang_VirtualFileOverlay_addFileMapping(
arg0,
virtualPath,
realPath,
);
}
late final _clang_VirtualFileOverlay_addFileMapping_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXVirtualFileOverlay, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>(
'clang_VirtualFileOverlay_addFileMapping');
late final _clang_VirtualFileOverlay_addFileMapping =
_clang_VirtualFileOverlay_addFileMapping_ptr.asFunction<
int Function(CXVirtualFileOverlay, ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>();
/// Set the case sensitivity for the CXVirtualFileOverlay object. The
/// CXVirtualFileOverlay object is case-sensitive by default, this option can
/// be used to override the default.
int clang_VirtualFileOverlay_setCaseSensitivity(
CXVirtualFileOverlay arg0,
int caseSensitive,
) {
return _clang_VirtualFileOverlay_setCaseSensitivity(
arg0,
caseSensitive,
);
}
late final _clang_VirtualFileOverlay_setCaseSensitivity_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXVirtualFileOverlay,
ffi.Int32)>>('clang_VirtualFileOverlay_setCaseSensitivity');
late final _clang_VirtualFileOverlay_setCaseSensitivity =
_clang_VirtualFileOverlay_setCaseSensitivity_ptr
.asFunction<int Function(CXVirtualFileOverlay, int)>();
/// Write out the CXVirtualFileOverlay object to a char buffer.
int clang_VirtualFileOverlay_writeToBuffer(
CXVirtualFileOverlay arg0,
int options,
ffi.Pointer<ffi.Pointer<ffi.Int8>> out_buffer_ptr,
ffi.Pointer<ffi.Uint32> out_buffer_size,
) {
return _clang_VirtualFileOverlay_writeToBuffer(
arg0,
options,
out_buffer_ptr,
out_buffer_size,
);
}
late final _clang_VirtualFileOverlay_writeToBuffer_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXVirtualFileOverlay,
ffi.Uint32,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Uint32>)>>(
'clang_VirtualFileOverlay_writeToBuffer');
late final _clang_VirtualFileOverlay_writeToBuffer =
_clang_VirtualFileOverlay_writeToBuffer_ptr.asFunction<
int Function(CXVirtualFileOverlay, int,
ffi.Pointer<ffi.Pointer<ffi.Int8>>, ffi.Pointer<ffi.Uint32>)>();
/// free memory allocated by libclang, such as the buffer returned by
/// CXVirtualFileOverlay() or clang_ModuleMapDescriptor_writeToBuffer().
void clang_free(
ffi.Pointer<ffi.Void> buffer,
) {
return _clang_free(
buffer,
);
}
late final _clang_free_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>(
'clang_free');
late final _clang_free =
_clang_free_ptr.asFunction<void Function(ffi.Pointer<ffi.Void>)>();
/// Dispose a CXVirtualFileOverlay object.
void clang_VirtualFileOverlay_dispose(
CXVirtualFileOverlay arg0,
) {
return _clang_VirtualFileOverlay_dispose(
arg0,
);
}
late final _clang_VirtualFileOverlay_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXVirtualFileOverlay)>>(
'clang_VirtualFileOverlay_dispose');
late final _clang_VirtualFileOverlay_dispose =
_clang_VirtualFileOverlay_dispose_ptr
.asFunction<void Function(CXVirtualFileOverlay)>();
/// Create a CXModuleMapDescriptor object. Must be disposed with
/// clang_ModuleMapDescriptor_dispose().
CXModuleMapDescriptor clang_ModuleMapDescriptor_create(
int options,
) {
return _clang_ModuleMapDescriptor_create(
options,
);
}
late final _clang_ModuleMapDescriptor_create_ptr =
_lookup<ffi.NativeFunction<CXModuleMapDescriptor Function(ffi.Uint32)>>(
'clang_ModuleMapDescriptor_create');
late final _clang_ModuleMapDescriptor_create =
_clang_ModuleMapDescriptor_create_ptr
.asFunction<CXModuleMapDescriptor Function(int)>();
/// Sets the framework module name that the module.map describes.
int clang_ModuleMapDescriptor_setFrameworkModuleName(
CXModuleMapDescriptor arg0,
ffi.Pointer<ffi.Int8> name,
) {
return _clang_ModuleMapDescriptor_setFrameworkModuleName(
arg0,
name,
);
}
late final _clang_ModuleMapDescriptor_setFrameworkModuleName_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXModuleMapDescriptor, ffi.Pointer<ffi.Int8>)>>(
'clang_ModuleMapDescriptor_setFrameworkModuleName');
late final _clang_ModuleMapDescriptor_setFrameworkModuleName =
_clang_ModuleMapDescriptor_setFrameworkModuleName_ptr.asFunction<
int Function(CXModuleMapDescriptor, ffi.Pointer<ffi.Int8>)>();
/// Sets the umbrealla header name that the module.map describes.
int clang_ModuleMapDescriptor_setUmbrellaHeader(
CXModuleMapDescriptor arg0,
ffi.Pointer<ffi.Int8> name,
) {
return _clang_ModuleMapDescriptor_setUmbrellaHeader(
arg0,
name,
);
}
late final _clang_ModuleMapDescriptor_setUmbrellaHeader_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXModuleMapDescriptor, ffi.Pointer<ffi.Int8>)>>(
'clang_ModuleMapDescriptor_setUmbrellaHeader');
late final _clang_ModuleMapDescriptor_setUmbrellaHeader =
_clang_ModuleMapDescriptor_setUmbrellaHeader_ptr.asFunction<
int Function(CXModuleMapDescriptor, ffi.Pointer<ffi.Int8>)>();
/// Write out the CXModuleMapDescriptor object to a char buffer.
int clang_ModuleMapDescriptor_writeToBuffer(
CXModuleMapDescriptor arg0,
int options,
ffi.Pointer<ffi.Pointer<ffi.Int8>> out_buffer_ptr,
ffi.Pointer<ffi.Uint32> out_buffer_size,
) {
return _clang_ModuleMapDescriptor_writeToBuffer(
arg0,
options,
out_buffer_ptr,
out_buffer_size,
);
}
late final _clang_ModuleMapDescriptor_writeToBuffer_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXModuleMapDescriptor,
ffi.Uint32,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Uint32>)>>(
'clang_ModuleMapDescriptor_writeToBuffer');
late final _clang_ModuleMapDescriptor_writeToBuffer =
_clang_ModuleMapDescriptor_writeToBuffer_ptr.asFunction<
int Function(CXModuleMapDescriptor, int,
ffi.Pointer<ffi.Pointer<ffi.Int8>>, ffi.Pointer<ffi.Uint32>)>();
/// Dispose a CXModuleMapDescriptor object.
void clang_ModuleMapDescriptor_dispose(
CXModuleMapDescriptor arg0,
) {
return _clang_ModuleMapDescriptor_dispose(
arg0,
);
}
late final _clang_ModuleMapDescriptor_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXModuleMapDescriptor)>>(
'clang_ModuleMapDescriptor_dispose');
late final _clang_ModuleMapDescriptor_dispose =
_clang_ModuleMapDescriptor_dispose_ptr
.asFunction<void Function(CXModuleMapDescriptor)>();
/// Provides a shared context for creating translation units.
CXIndex clang_createIndex(
int excludeDeclarationsFromPCH,
int displayDiagnostics,
) {
return _clang_createIndex(
excludeDeclarationsFromPCH,
displayDiagnostics,
);
}
late final _clang_createIndex_ptr =
_lookup<ffi.NativeFunction<CXIndex Function(ffi.Int32, ffi.Int32)>>(
'clang_createIndex');
late final _clang_createIndex =
_clang_createIndex_ptr.asFunction<CXIndex Function(int, int)>();
/// Destroy the given index.
void clang_disposeIndex(
CXIndex index,
) {
return _clang_disposeIndex(
index,
);
}
late final _clang_disposeIndex_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXIndex)>>(
'clang_disposeIndex');
late final _clang_disposeIndex =
_clang_disposeIndex_ptr.asFunction<void Function(CXIndex)>();
/// Sets general options associated with a CXIndex.
void clang_CXIndex_setGlobalOptions(
CXIndex arg0,
int options,
) {
return _clang_CXIndex_setGlobalOptions(
arg0,
options,
);
}
late final _clang_CXIndex_setGlobalOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXIndex, ffi.Uint32)>>(
'clang_CXIndex_setGlobalOptions');
late final _clang_CXIndex_setGlobalOptions =
_clang_CXIndex_setGlobalOptions_ptr
.asFunction<void Function(CXIndex, int)>();
/// Gets the general options associated with a CXIndex.
int clang_CXIndex_getGlobalOptions(
CXIndex arg0,
) {
return _clang_CXIndex_getGlobalOptions(
arg0,
);
}
late final _clang_CXIndex_getGlobalOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXIndex)>>(
'clang_CXIndex_getGlobalOptions');
late final _clang_CXIndex_getGlobalOptions =
_clang_CXIndex_getGlobalOptions_ptr.asFunction<int Function(CXIndex)>();
/// Sets the invocation emission path option in a CXIndex.
void clang_CXIndex_setInvocationEmissionPathOption(
CXIndex arg0,
ffi.Pointer<ffi.Int8> Path,
) {
return _clang_CXIndex_setInvocationEmissionPathOption(
arg0,
Path,
);
}
late final _clang_CXIndex_setInvocationEmissionPathOption_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXIndex, ffi.Pointer<ffi.Int8>)>>(
'clang_CXIndex_setInvocationEmissionPathOption');
late final _clang_CXIndex_setInvocationEmissionPathOption =
_clang_CXIndex_setInvocationEmissionPathOption_ptr
.asFunction<void Function(CXIndex, ffi.Pointer<ffi.Int8>)>();
/// Retrieve the complete file and path name of the given file.
CXString clang_getFileName(
CXFile SFile,
) {
return _clang_getFileName(
SFile,
);
}
late final _clang_getFileName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXFile)>>(
'clang_getFileName');
late final _clang_getFileName =
_clang_getFileName_ptr.asFunction<CXString Function(CXFile)>();
/// Retrieve the last modification time of the given file.
int clang_getFileTime(
CXFile SFile,
) {
return _clang_getFileTime(
SFile,
);
}
late final _clang_getFileTime_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXFile)>>(
'clang_getFileTime');
late final _clang_getFileTime =
_clang_getFileTime_ptr.asFunction<int Function(CXFile)>();
/// Retrieve the unique ID for the given file.
int clang_getFileUniqueID(
CXFile file,
ffi.Pointer<CXFileUniqueID> outID,
) {
return _clang_getFileUniqueID(
file,
outID,
);
}
late final _clang_getFileUniqueID_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXFile, ffi.Pointer<CXFileUniqueID>)>>('clang_getFileUniqueID');
late final _clang_getFileUniqueID = _clang_getFileUniqueID_ptr
.asFunction<int Function(CXFile, ffi.Pointer<CXFileUniqueID>)>();
/// Determine whether the given header is guarded against multiple inclusions,
/// either with the conventional #ifndef/#define/#endif macro guards or with
/// #pragma once.
int clang_isFileMultipleIncludeGuarded(
CXTranslationUnit tu,
CXFile file,
) {
return _clang_isFileMultipleIncludeGuarded(
tu,
file,
);
}
late final _clang_isFileMultipleIncludeGuarded_ptr = _lookup<
ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit, CXFile)>>(
'clang_isFileMultipleIncludeGuarded');
late final _clang_isFileMultipleIncludeGuarded =
_clang_isFileMultipleIncludeGuarded_ptr
.asFunction<int Function(CXTranslationUnit, CXFile)>();
/// Retrieve a file handle within the given translation unit.
CXFile clang_getFile(
CXTranslationUnit tu,
ffi.Pointer<ffi.Int8> file_name,
) {
return _clang_getFile(
tu,
file_name,
);
}
late final _clang_getFile_ptr = _lookup<
ffi.NativeFunction<
CXFile Function(
CXTranslationUnit, ffi.Pointer<ffi.Int8>)>>('clang_getFile');
late final _clang_getFile = _clang_getFile_ptr
.asFunction<CXFile Function(CXTranslationUnit, ffi.Pointer<ffi.Int8>)>();
/// Retrieve the buffer associated with the given file.
ffi.Pointer<ffi.Int8> clang_getFileContents(
CXTranslationUnit tu,
CXFile file,
ffi.Pointer<ffi.IntPtr> size,
) {
return _clang_getFileContents(
tu,
file,
size,
);
}
late final _clang_getFileContents_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<ffi.Int8> Function(CXTranslationUnit, CXFile,
ffi.Pointer<ffi.IntPtr>)>>('clang_getFileContents');
late final _clang_getFileContents = _clang_getFileContents_ptr.asFunction<
ffi.Pointer<ffi.Int8> Function(
CXTranslationUnit, CXFile, ffi.Pointer<ffi.IntPtr>)>();
/// Returns non-zero if the file1 and file2 point to the same file, or they
/// are both NULL.
int clang_File_isEqual(
CXFile file1,
CXFile file2,
) {
return _clang_File_isEqual(
file1,
file2,
);
}
late final _clang_File_isEqual_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXFile, CXFile)>>(
'clang_File_isEqual');
late final _clang_File_isEqual =
_clang_File_isEqual_ptr.asFunction<int Function(CXFile, CXFile)>();
/// Returns the real path name of file.
CXString clang_File_tryGetRealPathName(
CXFile file,
) {
return _clang_File_tryGetRealPathName(
file,
);
}
late final _clang_File_tryGetRealPathName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXFile)>>(
'clang_File_tryGetRealPathName');
late final _clang_File_tryGetRealPathName = _clang_File_tryGetRealPathName_ptr
.asFunction<CXString Function(CXFile)>();
/// Retrieve a NULL (invalid) source location.
CXSourceLocation clang_getNullLocation() {
return _clang_getNullLocation();
}
late final _clang_getNullLocation_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function()>>(
'clang_getNullLocation');
late final _clang_getNullLocation =
_clang_getNullLocation_ptr.asFunction<CXSourceLocation Function()>();
/// Determine whether two source locations, which must refer into the same
/// translation unit, refer to exactly the same point in the source code.
int clang_equalLocations(
CXSourceLocation loc1,
CXSourceLocation loc2,
) {
return _clang_equalLocations(
loc1,
loc2,
);
}
late final _clang_equalLocations_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(
CXSourceLocation, CXSourceLocation)>>('clang_equalLocations');
late final _clang_equalLocations = _clang_equalLocations_ptr
.asFunction<int Function(CXSourceLocation, CXSourceLocation)>();
/// Retrieves the source location associated with a given file/line/column in
/// a particular translation unit.
CXSourceLocation clang_getLocation(
CXTranslationUnit tu,
CXFile file,
int line,
int column,
) {
return _clang_getLocation(
tu,
file,
line,
column,
);
}
late final _clang_getLocation_ptr = _lookup<
ffi.NativeFunction<
CXSourceLocation Function(CXTranslationUnit, CXFile, ffi.Uint32,
ffi.Uint32)>>('clang_getLocation');
late final _clang_getLocation = _clang_getLocation_ptr.asFunction<
CXSourceLocation Function(CXTranslationUnit, CXFile, int, int)>();
/// Retrieves the source location associated with a given character offset in
/// a particular translation unit.
CXSourceLocation clang_getLocationForOffset(
CXTranslationUnit tu,
CXFile file,
int offset,
) {
return _clang_getLocationForOffset(
tu,
file,
offset,
);
}
late final _clang_getLocationForOffset_ptr = _lookup<
ffi.NativeFunction<
CXSourceLocation Function(CXTranslationUnit, CXFile,
ffi.Uint32)>>('clang_getLocationForOffset');
late final _clang_getLocationForOffset = _clang_getLocationForOffset_ptr
.asFunction<CXSourceLocation Function(CXTranslationUnit, CXFile, int)>();
/// Returns non-zero if the given source location is in a system header.
int clang_Location_isInSystemHeader(
CXSourceLocation location,
) {
return _clang_Location_isInSystemHeader(
location,
);
}
late final _clang_Location_isInSystemHeader_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXSourceLocation)>>(
'clang_Location_isInSystemHeader');
late final _clang_Location_isInSystemHeader =
_clang_Location_isInSystemHeader_ptr
.asFunction<int Function(CXSourceLocation)>();
/// Returns non-zero if the given source location is in the main file of the
/// corresponding translation unit.
int clang_Location_isFromMainFile(
CXSourceLocation location,
) {
return _clang_Location_isFromMainFile(
location,
);
}
late final _clang_Location_isFromMainFile_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXSourceLocation)>>(
'clang_Location_isFromMainFile');
late final _clang_Location_isFromMainFile = _clang_Location_isFromMainFile_ptr
.asFunction<int Function(CXSourceLocation)>();
/// Retrieve a NULL (invalid) source range.
CXSourceRange clang_getNullRange() {
return _clang_getNullRange();
}
late final _clang_getNullRange_ptr =
_lookup<ffi.NativeFunction<CXSourceRange Function()>>(
'clang_getNullRange');
late final _clang_getNullRange =
_clang_getNullRange_ptr.asFunction<CXSourceRange Function()>();
/// Retrieve a source range given the beginning and ending source locations.
CXSourceRange clang_getRange(
CXSourceLocation begin,
CXSourceLocation end,
) {
return _clang_getRange(
begin,
end,
);
}
late final _clang_getRange_ptr = _lookup<
ffi.NativeFunction<
CXSourceRange Function(
CXSourceLocation, CXSourceLocation)>>('clang_getRange');
late final _clang_getRange = _clang_getRange_ptr
.asFunction<CXSourceRange Function(CXSourceLocation, CXSourceLocation)>();
/// Determine whether two ranges are equivalent.
int clang_equalRanges(
CXSourceRange range1,
CXSourceRange range2,
) {
return _clang_equalRanges(
range1,
range2,
);
}
late final _clang_equalRanges_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(
CXSourceRange, CXSourceRange)>>('clang_equalRanges');
late final _clang_equalRanges = _clang_equalRanges_ptr
.asFunction<int Function(CXSourceRange, CXSourceRange)>();
/// Returns non-zero if range is null.
int clang_Range_isNull(
CXSourceRange range,
) {
return _clang_Range_isNull(
range,
);
}
late final _clang_Range_isNull_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXSourceRange)>>(
'clang_Range_isNull');
late final _clang_Range_isNull =
_clang_Range_isNull_ptr.asFunction<int Function(CXSourceRange)>();
/// Retrieve the file, line, column, and offset represented by the given
/// source location.
void clang_getExpansionLocation(
CXSourceLocation location,
ffi.Pointer<CXFile> file,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
ffi.Pointer<ffi.Uint32> offset,
) {
return _clang_getExpansionLocation(
location,
file,
line,
column,
offset,
);
}
late final _clang_getExpansionLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_getExpansionLocation');
late final _clang_getExpansionLocation =
_clang_getExpansionLocation_ptr.asFunction<
void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
/// Retrieve the file, line and column represented by the given source
/// location, as specified in a # line directive.
void clang_getPresumedLocation(
CXSourceLocation location,
ffi.Pointer<CXString> filename,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
) {
return _clang_getPresumedLocation(
location,
filename,
line,
column,
);
}
late final _clang_getPresumedLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXSourceLocation,
ffi.Pointer<CXString>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_getPresumedLocation');
late final _clang_getPresumedLocation =
_clang_getPresumedLocation_ptr.asFunction<
void Function(CXSourceLocation, ffi.Pointer<CXString>,
ffi.Pointer<ffi.Uint32>, ffi.Pointer<ffi.Uint32>)>();
/// Legacy API to retrieve the file, line, column, and offset represented by
/// the given source location.
void clang_getInstantiationLocation(
CXSourceLocation location,
ffi.Pointer<CXFile> file,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
ffi.Pointer<ffi.Uint32> offset,
) {
return _clang_getInstantiationLocation(
location,
file,
line,
column,
offset,
);
}
late final _clang_getInstantiationLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_getInstantiationLocation');
late final _clang_getInstantiationLocation =
_clang_getInstantiationLocation_ptr.asFunction<
void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
/// Retrieve the file, line, column, and offset represented by the given
/// source location.
void clang_getSpellingLocation(
CXSourceLocation location,
ffi.Pointer<CXFile> file,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
ffi.Pointer<ffi.Uint32> offset,
) {
return _clang_getSpellingLocation(
location,
file,
line,
column,
offset,
);
}
late final _clang_getSpellingLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_getSpellingLocation');
late final _clang_getSpellingLocation =
_clang_getSpellingLocation_ptr.asFunction<
void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
/// Retrieve the file, line, column, and offset represented by the given
/// source location.
void clang_getFileLocation(
CXSourceLocation location,
ffi.Pointer<CXFile> file,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
ffi.Pointer<ffi.Uint32> offset,
) {
return _clang_getFileLocation(
location,
file,
line,
column,
offset,
);
}
late final _clang_getFileLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_getFileLocation');
late final _clang_getFileLocation = _clang_getFileLocation_ptr.asFunction<
void Function(
CXSourceLocation,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
/// Retrieve a source location representing the first character within a
/// source range.
CXSourceLocation clang_getRangeStart(
CXSourceRange range,
) {
return _clang_getRangeStart(
range,
);
}
late final _clang_getRangeStart_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function(CXSourceRange)>>(
'clang_getRangeStart');
late final _clang_getRangeStart = _clang_getRangeStart_ptr
.asFunction<CXSourceLocation Function(CXSourceRange)>();
/// Retrieve a source location representing the last character within a source
/// range.
CXSourceLocation clang_getRangeEnd(
CXSourceRange range,
) {
return _clang_getRangeEnd(
range,
);
}
late final _clang_getRangeEnd_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function(CXSourceRange)>>(
'clang_getRangeEnd');
late final _clang_getRangeEnd = _clang_getRangeEnd_ptr
.asFunction<CXSourceLocation Function(CXSourceRange)>();
/// Retrieve all ranges that were skipped by the preprocessor.
ffi.Pointer<CXSourceRangeList> clang_getSkippedRanges(
CXTranslationUnit tu,
CXFile file,
) {
return _clang_getSkippedRanges(
tu,
file,
);
}
late final _clang_getSkippedRanges_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXSourceRangeList> Function(
CXTranslationUnit, CXFile)>>('clang_getSkippedRanges');
late final _clang_getSkippedRanges = _clang_getSkippedRanges_ptr.asFunction<
ffi.Pointer<CXSourceRangeList> Function(CXTranslationUnit, CXFile)>();
/// Retrieve all ranges from all files that were skipped by the preprocessor.
ffi.Pointer<CXSourceRangeList> clang_getAllSkippedRanges(
CXTranslationUnit tu,
) {
return _clang_getAllSkippedRanges(
tu,
);
}
late final _clang_getAllSkippedRanges_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXSourceRangeList> Function(
CXTranslationUnit)>>('clang_getAllSkippedRanges');
late final _clang_getAllSkippedRanges = _clang_getAllSkippedRanges_ptr
.asFunction<ffi.Pointer<CXSourceRangeList> Function(CXTranslationUnit)>();
/// Destroy the given CXSourceRangeList.
void clang_disposeSourceRangeList(
ffi.Pointer<CXSourceRangeList> ranges,
) {
return _clang_disposeSourceRangeList(
ranges,
);
}
late final _clang_disposeSourceRangeList_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Pointer<CXSourceRangeList>)>>('clang_disposeSourceRangeList');
late final _clang_disposeSourceRangeList = _clang_disposeSourceRangeList_ptr
.asFunction<void Function(ffi.Pointer<CXSourceRangeList>)>();
/// Determine the number of diagnostics in a CXDiagnosticSet.
int clang_getNumDiagnosticsInSet(
CXDiagnosticSet Diags,
) {
return _clang_getNumDiagnosticsInSet(
Diags,
);
}
late final _clang_getNumDiagnosticsInSet_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXDiagnosticSet)>>(
'clang_getNumDiagnosticsInSet');
late final _clang_getNumDiagnosticsInSet = _clang_getNumDiagnosticsInSet_ptr
.asFunction<int Function(CXDiagnosticSet)>();
/// Retrieve a diagnostic associated with the given CXDiagnosticSet.
CXDiagnostic clang_getDiagnosticInSet(
CXDiagnosticSet Diags,
int Index,
) {
return _clang_getDiagnosticInSet(
Diags,
Index,
);
}
late final _clang_getDiagnosticInSet_ptr = _lookup<
ffi.NativeFunction<
CXDiagnostic Function(
CXDiagnosticSet, ffi.Uint32)>>('clang_getDiagnosticInSet');
late final _clang_getDiagnosticInSet = _clang_getDiagnosticInSet_ptr
.asFunction<CXDiagnostic Function(CXDiagnosticSet, int)>();
/// Deserialize a set of diagnostics from a Clang diagnostics bitcode file.
CXDiagnosticSet clang_loadDiagnostics(
ffi.Pointer<ffi.Int8> file,
ffi.Pointer<ffi.Int32> error,
ffi.Pointer<CXString> errorString,
) {
return _clang_loadDiagnostics(
file,
error,
errorString,
);
}
late final _clang_loadDiagnostics_ptr = _lookup<
ffi.NativeFunction<
CXDiagnosticSet Function(
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>)>>('clang_loadDiagnostics');
late final _clang_loadDiagnostics = _clang_loadDiagnostics_ptr.asFunction<
CXDiagnosticSet Function(ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>)>();
/// Release a CXDiagnosticSet and all of its contained diagnostics.
void clang_disposeDiagnosticSet(
CXDiagnosticSet Diags,
) {
return _clang_disposeDiagnosticSet(
Diags,
);
}
late final _clang_disposeDiagnosticSet_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXDiagnosticSet)>>(
'clang_disposeDiagnosticSet');
late final _clang_disposeDiagnosticSet = _clang_disposeDiagnosticSet_ptr
.asFunction<void Function(CXDiagnosticSet)>();
/// Retrieve the child diagnostics of a CXDiagnostic.
CXDiagnosticSet clang_getChildDiagnostics(
CXDiagnostic D,
) {
return _clang_getChildDiagnostics(
D,
);
}
late final _clang_getChildDiagnostics_ptr =
_lookup<ffi.NativeFunction<CXDiagnosticSet Function(CXDiagnostic)>>(
'clang_getChildDiagnostics');
late final _clang_getChildDiagnostics = _clang_getChildDiagnostics_ptr
.asFunction<CXDiagnosticSet Function(CXDiagnostic)>();
/// Determine the number of diagnostics produced for the given translation
/// unit.
int clang_getNumDiagnostics(
CXTranslationUnit Unit,
) {
return _clang_getNumDiagnostics(
Unit,
);
}
late final _clang_getNumDiagnostics_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit)>>(
'clang_getNumDiagnostics');
late final _clang_getNumDiagnostics = _clang_getNumDiagnostics_ptr
.asFunction<int Function(CXTranslationUnit)>();
/// Retrieve a diagnostic associated with the given translation unit.
CXDiagnostic clang_getDiagnostic(
CXTranslationUnit Unit,
int Index,
) {
return _clang_getDiagnostic(
Unit,
Index,
);
}
late final _clang_getDiagnostic_ptr = _lookup<
ffi.NativeFunction<
CXDiagnostic Function(
CXTranslationUnit, ffi.Uint32)>>('clang_getDiagnostic');
late final _clang_getDiagnostic = _clang_getDiagnostic_ptr
.asFunction<CXDiagnostic Function(CXTranslationUnit, int)>();
/// Retrieve the complete set of diagnostics associated with a translation
/// unit.
CXDiagnosticSet clang_getDiagnosticSetFromTU(
CXTranslationUnit Unit,
) {
return _clang_getDiagnosticSetFromTU(
Unit,
);
}
late final _clang_getDiagnosticSetFromTU_ptr =
_lookup<ffi.NativeFunction<CXDiagnosticSet Function(CXTranslationUnit)>>(
'clang_getDiagnosticSetFromTU');
late final _clang_getDiagnosticSetFromTU = _clang_getDiagnosticSetFromTU_ptr
.asFunction<CXDiagnosticSet Function(CXTranslationUnit)>();
/// Destroy a diagnostic.
void clang_disposeDiagnostic(
CXDiagnostic Diagnostic,
) {
return _clang_disposeDiagnostic(
Diagnostic,
);
}
late final _clang_disposeDiagnostic_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXDiagnostic)>>(
'clang_disposeDiagnostic');
late final _clang_disposeDiagnostic =
_clang_disposeDiagnostic_ptr.asFunction<void Function(CXDiagnostic)>();
/// Format the given diagnostic in a manner that is suitable for display.
CXString clang_formatDiagnostic(
CXDiagnostic Diagnostic,
int Options,
) {
return _clang_formatDiagnostic(
Diagnostic,
Options,
);
}
late final _clang_formatDiagnostic_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXDiagnostic, ffi.Uint32)>>(
'clang_formatDiagnostic');
late final _clang_formatDiagnostic = _clang_formatDiagnostic_ptr
.asFunction<CXString Function(CXDiagnostic, int)>();
/// Retrieve the set of display options most similar to the default behavior
/// of the clang compiler.
int clang_defaultDiagnosticDisplayOptions() {
return _clang_defaultDiagnosticDisplayOptions();
}
late final _clang_defaultDiagnosticDisplayOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function()>>(
'clang_defaultDiagnosticDisplayOptions');
late final _clang_defaultDiagnosticDisplayOptions =
_clang_defaultDiagnosticDisplayOptions_ptr.asFunction<int Function()>();
/// Determine the severity of the given diagnostic.
int clang_getDiagnosticSeverity(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticSeverity(
arg0,
);
}
late final _clang_getDiagnosticSeverity_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXDiagnostic)>>(
'clang_getDiagnosticSeverity');
late final _clang_getDiagnosticSeverity =
_clang_getDiagnosticSeverity_ptr.asFunction<int Function(CXDiagnostic)>();
/// Retrieve the source location of the given diagnostic.
CXSourceLocation clang_getDiagnosticLocation(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticLocation(
arg0,
);
}
late final _clang_getDiagnosticLocation_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function(CXDiagnostic)>>(
'clang_getDiagnosticLocation');
late final _clang_getDiagnosticLocation = _clang_getDiagnosticLocation_ptr
.asFunction<CXSourceLocation Function(CXDiagnostic)>();
/// Retrieve the text of the given diagnostic.
CXString clang_getDiagnosticSpelling(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticSpelling(
arg0,
);
}
late final _clang_getDiagnosticSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXDiagnostic)>>(
'clang_getDiagnosticSpelling');
late final _clang_getDiagnosticSpelling = _clang_getDiagnosticSpelling_ptr
.asFunction<CXString Function(CXDiagnostic)>();
/// Retrieve the name of the command-line option that enabled this diagnostic.
CXString clang_getDiagnosticOption(
CXDiagnostic Diag,
ffi.Pointer<CXString> Disable,
) {
return _clang_getDiagnosticOption(
Diag,
Disable,
);
}
late final _clang_getDiagnosticOption_ptr = _lookup<
ffi.NativeFunction<
CXString Function(CXDiagnostic,
ffi.Pointer<CXString>)>>('clang_getDiagnosticOption');
late final _clang_getDiagnosticOption = _clang_getDiagnosticOption_ptr
.asFunction<CXString Function(CXDiagnostic, ffi.Pointer<CXString>)>();
/// Retrieve the category number for this diagnostic.
int clang_getDiagnosticCategory(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticCategory(
arg0,
);
}
late final _clang_getDiagnosticCategory_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXDiagnostic)>>(
'clang_getDiagnosticCategory');
late final _clang_getDiagnosticCategory =
_clang_getDiagnosticCategory_ptr.asFunction<int Function(CXDiagnostic)>();
/// Retrieve the name of a particular diagnostic category. This is now
/// deprecated. Use clang_getDiagnosticCategoryText() instead.
CXString clang_getDiagnosticCategoryName(
int Category,
) {
return _clang_getDiagnosticCategoryName(
Category,
);
}
late final _clang_getDiagnosticCategoryName_ptr =
_lookup<ffi.NativeFunction<CXString Function(ffi.Uint32)>>(
'clang_getDiagnosticCategoryName');
late final _clang_getDiagnosticCategoryName =
_clang_getDiagnosticCategoryName_ptr.asFunction<CXString Function(int)>();
/// Retrieve the diagnostic category text for a given diagnostic.
CXString clang_getDiagnosticCategoryText(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticCategoryText(
arg0,
);
}
late final _clang_getDiagnosticCategoryText_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXDiagnostic)>>(
'clang_getDiagnosticCategoryText');
late final _clang_getDiagnosticCategoryText =
_clang_getDiagnosticCategoryText_ptr
.asFunction<CXString Function(CXDiagnostic)>();
/// Determine the number of source ranges associated with the given
/// diagnostic.
int clang_getDiagnosticNumRanges(
CXDiagnostic arg0,
) {
return _clang_getDiagnosticNumRanges(
arg0,
);
}
late final _clang_getDiagnosticNumRanges_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXDiagnostic)>>(
'clang_getDiagnosticNumRanges');
late final _clang_getDiagnosticNumRanges = _clang_getDiagnosticNumRanges_ptr
.asFunction<int Function(CXDiagnostic)>();
/// Retrieve a source range associated with the diagnostic.
CXSourceRange clang_getDiagnosticRange(
CXDiagnostic Diagnostic,
int Range,
) {
return _clang_getDiagnosticRange(
Diagnostic,
Range,
);
}
late final _clang_getDiagnosticRange_ptr = _lookup<
ffi.NativeFunction<CXSourceRange Function(CXDiagnostic, ffi.Uint32)>>(
'clang_getDiagnosticRange');
late final _clang_getDiagnosticRange = _clang_getDiagnosticRange_ptr
.asFunction<CXSourceRange Function(CXDiagnostic, int)>();
/// Determine the number of fix-it hints associated with the given diagnostic.
int clang_getDiagnosticNumFixIts(
CXDiagnostic Diagnostic,
) {
return _clang_getDiagnosticNumFixIts(
Diagnostic,
);
}
late final _clang_getDiagnosticNumFixIts_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXDiagnostic)>>(
'clang_getDiagnosticNumFixIts');
late final _clang_getDiagnosticNumFixIts = _clang_getDiagnosticNumFixIts_ptr
.asFunction<int Function(CXDiagnostic)>();
/// Retrieve the replacement information for a given fix-it.
CXString clang_getDiagnosticFixIt(
CXDiagnostic Diagnostic,
int FixIt,
ffi.Pointer<CXSourceRange> ReplacementRange,
) {
return _clang_getDiagnosticFixIt(
Diagnostic,
FixIt,
ReplacementRange,
);
}
late final _clang_getDiagnosticFixIt_ptr = _lookup<
ffi.NativeFunction<
CXString Function(CXDiagnostic, ffi.Uint32,
ffi.Pointer<CXSourceRange>)>>('clang_getDiagnosticFixIt');
late final _clang_getDiagnosticFixIt =
_clang_getDiagnosticFixIt_ptr.asFunction<
CXString Function(CXDiagnostic, int, ffi.Pointer<CXSourceRange>)>();
/// Get the original translation unit source file name.
CXString clang_getTranslationUnitSpelling(
CXTranslationUnit CTUnit,
) {
return _clang_getTranslationUnitSpelling(
CTUnit,
);
}
late final _clang_getTranslationUnitSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXTranslationUnit)>>(
'clang_getTranslationUnitSpelling');
late final _clang_getTranslationUnitSpelling =
_clang_getTranslationUnitSpelling_ptr
.asFunction<CXString Function(CXTranslationUnit)>();
/// Return the CXTranslationUnit for a given source file and the provided
/// command line arguments one would pass to the compiler.
CXTranslationUnit clang_createTranslationUnitFromSourceFile(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> source_filename,
int num_clang_command_line_args,
ffi.Pointer<ffi.Pointer<ffi.Int8>> clang_command_line_args,
int num_unsaved_files,
ffi.Pointer<CXUnsavedFile> unsaved_files,
) {
return _clang_createTranslationUnitFromSourceFile(
CIdx,
source_filename,
num_clang_command_line_args,
clang_command_line_args,
num_unsaved_files,
unsaved_files,
);
}
late final _clang_createTranslationUnitFromSourceFile_ptr = _lookup<
ffi.NativeFunction<
CXTranslationUnit Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Int32,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Uint32,
ffi.Pointer<CXUnsavedFile>)>>(
'clang_createTranslationUnitFromSourceFile');
late final _clang_createTranslationUnitFromSourceFile =
_clang_createTranslationUnitFromSourceFile_ptr.asFunction<
CXTranslationUnit Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
int,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>)>();
/// Same as clang_createTranslationUnit2, but returns the CXTranslationUnit
/// instead of an error code. In case of an error this routine returns a NULL
/// CXTranslationUnit, without further detailed error codes.
CXTranslationUnit clang_createTranslationUnit(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> ast_filename,
) {
return _clang_createTranslationUnit(
CIdx,
ast_filename,
);
}
late final _clang_createTranslationUnit_ptr = _lookup<
ffi.NativeFunction<
CXTranslationUnit Function(
CXIndex, ffi.Pointer<ffi.Int8>)>>('clang_createTranslationUnit');
late final _clang_createTranslationUnit = _clang_createTranslationUnit_ptr
.asFunction<CXTranslationUnit Function(CXIndex, ffi.Pointer<ffi.Int8>)>();
/// Create a translation unit from an AST file ( -emit-ast).
int clang_createTranslationUnit2(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> ast_filename,
ffi.Pointer<CXTranslationUnit> out_TU,
) {
return _clang_createTranslationUnit2(
CIdx,
ast_filename,
out_TU,
);
}
late final _clang_createTranslationUnit2_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXIndex, ffi.Pointer<ffi.Int8>,
ffi.Pointer<CXTranslationUnit>)>>('clang_createTranslationUnit2');
late final _clang_createTranslationUnit2 =
_clang_createTranslationUnit2_ptr.asFunction<
int Function(CXIndex, ffi.Pointer<ffi.Int8>,
ffi.Pointer<CXTranslationUnit>)>();
/// Returns the set of flags that is suitable for parsing a translation unit
/// that is being edited.
int clang_defaultEditingTranslationUnitOptions() {
return _clang_defaultEditingTranslationUnitOptions();
}
late final _clang_defaultEditingTranslationUnitOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function()>>(
'clang_defaultEditingTranslationUnitOptions');
late final _clang_defaultEditingTranslationUnitOptions =
_clang_defaultEditingTranslationUnitOptions_ptr
.asFunction<int Function()>();
/// Same as clang_parseTranslationUnit2, but returns the CXTranslationUnit
/// instead of an error code. In case of an error this routine returns a NULL
/// CXTranslationUnit, without further detailed error codes.
CXTranslationUnit clang_parseTranslationUnit(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> source_filename,
ffi.Pointer<ffi.Pointer<ffi.Int8>> command_line_args,
int num_command_line_args,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
int options,
) {
return _clang_parseTranslationUnit(
CIdx,
source_filename,
command_line_args,
num_command_line_args,
unsaved_files,
num_unsaved_files,
options,
);
}
late final _clang_parseTranslationUnit_ptr = _lookup<
ffi.NativeFunction<
CXTranslationUnit Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Int32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Uint32)>>('clang_parseTranslationUnit');
late final _clang_parseTranslationUnit =
_clang_parseTranslationUnit_ptr.asFunction<
CXTranslationUnit Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>,
int,
int)>();
/// Parse the given source file and the translation unit corresponding to that
/// file.
int clang_parseTranslationUnit2(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> source_filename,
ffi.Pointer<ffi.Pointer<ffi.Int8>> command_line_args,
int num_command_line_args,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
int options,
ffi.Pointer<CXTranslationUnit> out_TU,
) {
return _clang_parseTranslationUnit2(
CIdx,
source_filename,
command_line_args,
num_command_line_args,
unsaved_files,
num_unsaved_files,
options,
out_TU,
);
}
late final _clang_parseTranslationUnit2_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Int32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<CXTranslationUnit>)>>('clang_parseTranslationUnit2');
late final _clang_parseTranslationUnit2 =
_clang_parseTranslationUnit2_ptr.asFunction<
int Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>,
int,
int,
ffi.Pointer<CXTranslationUnit>)>();
/// Same as clang_parseTranslationUnit2 but requires a full command line for
/// command_line_args including argv[0]. This is useful if the standard
/// library paths are relative to the binary.
int clang_parseTranslationUnit2FullArgv(
CXIndex CIdx,
ffi.Pointer<ffi.Int8> source_filename,
ffi.Pointer<ffi.Pointer<ffi.Int8>> command_line_args,
int num_command_line_args,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
int options,
ffi.Pointer<CXTranslationUnit> out_TU,
) {
return _clang_parseTranslationUnit2FullArgv(
CIdx,
source_filename,
command_line_args,
num_command_line_args,
unsaved_files,
num_unsaved_files,
options,
out_TU,
);
}
late final _clang_parseTranslationUnit2FullArgv_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Int32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<CXTranslationUnit>)>>(
'clang_parseTranslationUnit2FullArgv');
late final _clang_parseTranslationUnit2FullArgv =
_clang_parseTranslationUnit2FullArgv_ptr.asFunction<
int Function(
CXIndex,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>,
int,
int,
ffi.Pointer<CXTranslationUnit>)>();
/// Returns the set of flags that is suitable for saving a translation unit.
int clang_defaultSaveOptions(
CXTranslationUnit TU,
) {
return _clang_defaultSaveOptions(
TU,
);
}
late final _clang_defaultSaveOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit)>>(
'clang_defaultSaveOptions');
late final _clang_defaultSaveOptions = _clang_defaultSaveOptions_ptr
.asFunction<int Function(CXTranslationUnit)>();
/// Saves a translation unit into a serialized representation of that
/// translation unit on disk.
int clang_saveTranslationUnit(
CXTranslationUnit TU,
ffi.Pointer<ffi.Int8> FileName,
int options,
) {
return _clang_saveTranslationUnit(
TU,
FileName,
options,
);
}
late final _clang_saveTranslationUnit_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXTranslationUnit, ffi.Pointer<ffi.Int8>,
ffi.Uint32)>>('clang_saveTranslationUnit');
late final _clang_saveTranslationUnit =
_clang_saveTranslationUnit_ptr.asFunction<
int Function(CXTranslationUnit, ffi.Pointer<ffi.Int8>, int)>();
/// Suspend a translation unit in order to free memory associated with it.
int clang_suspendTranslationUnit(
CXTranslationUnit arg0,
) {
return _clang_suspendTranslationUnit(
arg0,
);
}
late final _clang_suspendTranslationUnit_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit)>>(
'clang_suspendTranslationUnit');
late final _clang_suspendTranslationUnit = _clang_suspendTranslationUnit_ptr
.asFunction<int Function(CXTranslationUnit)>();
/// Destroy the specified CXTranslationUnit object.
void clang_disposeTranslationUnit(
CXTranslationUnit arg0,
) {
return _clang_disposeTranslationUnit(
arg0,
);
}
late final _clang_disposeTranslationUnit_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXTranslationUnit)>>(
'clang_disposeTranslationUnit');
late final _clang_disposeTranslationUnit = _clang_disposeTranslationUnit_ptr
.asFunction<void Function(CXTranslationUnit)>();
/// Returns the set of flags that is suitable for reparsing a translation
/// unit.
int clang_defaultReparseOptions(
CXTranslationUnit TU,
) {
return _clang_defaultReparseOptions(
TU,
);
}
late final _clang_defaultReparseOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit)>>(
'clang_defaultReparseOptions');
late final _clang_defaultReparseOptions = _clang_defaultReparseOptions_ptr
.asFunction<int Function(CXTranslationUnit)>();
/// Reparse the source files that produced this translation unit.
int clang_reparseTranslationUnit(
CXTranslationUnit TU,
int num_unsaved_files,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int options,
) {
return _clang_reparseTranslationUnit(
TU,
num_unsaved_files,
unsaved_files,
options,
);
}
late final _clang_reparseTranslationUnit_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXTranslationUnit,
ffi.Uint32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32)>>('clang_reparseTranslationUnit');
late final _clang_reparseTranslationUnit =
_clang_reparseTranslationUnit_ptr.asFunction<
int Function(
CXTranslationUnit, int, ffi.Pointer<CXUnsavedFile>, int)>();
/// Returns the human-readable null-terminated C string that represents the
/// name of the memory category. This string should never be freed.
ffi.Pointer<ffi.Int8> clang_getTUResourceUsageName(
int kind,
) {
return _clang_getTUResourceUsageName(
kind,
);
}
late final _clang_getTUResourceUsageName_ptr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function(ffi.Int32)>>(
'clang_getTUResourceUsageName');
late final _clang_getTUResourceUsageName = _clang_getTUResourceUsageName_ptr
.asFunction<ffi.Pointer<ffi.Int8> Function(int)>();
/// Return the memory usage of a translation unit. This object should be
/// released with clang_disposeCXTUResourceUsage().
CXTUResourceUsage clang_getCXTUResourceUsage(
CXTranslationUnit TU,
) {
return _clang_getCXTUResourceUsage(
TU,
);
}
late final _clang_getCXTUResourceUsage_ptr = _lookup<
ffi.NativeFunction<CXTUResourceUsage Function(CXTranslationUnit)>>(
'clang_getCXTUResourceUsage');
late final _clang_getCXTUResourceUsage = _clang_getCXTUResourceUsage_ptr
.asFunction<CXTUResourceUsage Function(CXTranslationUnit)>();
void clang_disposeCXTUResourceUsage(
CXTUResourceUsage usage,
) {
return _clang_disposeCXTUResourceUsage(
usage,
);
}
late final _clang_disposeCXTUResourceUsage_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXTUResourceUsage)>>(
'clang_disposeCXTUResourceUsage');
late final _clang_disposeCXTUResourceUsage =
_clang_disposeCXTUResourceUsage_ptr
.asFunction<void Function(CXTUResourceUsage)>();
/// Get target information for this translation unit.
CXTargetInfo clang_getTranslationUnitTargetInfo(
CXTranslationUnit CTUnit,
) {
return _clang_getTranslationUnitTargetInfo(
CTUnit,
);
}
late final _clang_getTranslationUnitTargetInfo_ptr =
_lookup<ffi.NativeFunction<CXTargetInfo Function(CXTranslationUnit)>>(
'clang_getTranslationUnitTargetInfo');
late final _clang_getTranslationUnitTargetInfo =
_clang_getTranslationUnitTargetInfo_ptr
.asFunction<CXTargetInfo Function(CXTranslationUnit)>();
/// Destroy the CXTargetInfo object.
void clang_TargetInfo_dispose(
CXTargetInfo Info,
) {
return _clang_TargetInfo_dispose(
Info,
);
}
late final _clang_TargetInfo_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXTargetInfo)>>(
'clang_TargetInfo_dispose');
late final _clang_TargetInfo_dispose =
_clang_TargetInfo_dispose_ptr.asFunction<void Function(CXTargetInfo)>();
/// Get the normalized target triple as a string.
CXString clang_TargetInfo_getTriple(
CXTargetInfo Info,
) {
return _clang_TargetInfo_getTriple(
Info,
);
}
late final _clang_TargetInfo_getTriple_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXTargetInfo)>>(
'clang_TargetInfo_getTriple');
late final _clang_TargetInfo_getTriple = _clang_TargetInfo_getTriple_ptr
.asFunction<CXString Function(CXTargetInfo)>();
/// Get the pointer width of the target in bits.
int clang_TargetInfo_getPointerWidth(
CXTargetInfo Info,
) {
return _clang_TargetInfo_getPointerWidth(
Info,
);
}
late final _clang_TargetInfo_getPointerWidth_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXTargetInfo)>>(
'clang_TargetInfo_getPointerWidth');
late final _clang_TargetInfo_getPointerWidth =
_clang_TargetInfo_getPointerWidth_ptr
.asFunction<int Function(CXTargetInfo)>();
/// Retrieve the NULL cursor, which represents no entity.
CXCursor clang_getNullCursor() {
return _clang_getNullCursor();
}
late final _clang_getNullCursor_ptr =
_lookup<ffi.NativeFunction<CXCursor Function()>>('clang_getNullCursor');
late final _clang_getNullCursor =
_clang_getNullCursor_ptr.asFunction<CXCursor Function()>();
/// Retrieve the cursor that represents the given translation unit.
CXCursor clang_getTranslationUnitCursor(
CXTranslationUnit arg0,
) {
return _clang_getTranslationUnitCursor(
arg0,
);
}
late final _clang_getTranslationUnitCursor_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXTranslationUnit)>>(
'clang_getTranslationUnitCursor');
late final _clang_getTranslationUnitCursor =
_clang_getTranslationUnitCursor_ptr
.asFunction<CXCursor Function(CXTranslationUnit)>();
/// Determine whether two cursors are equivalent.
int clang_equalCursors(
CXCursor arg0,
CXCursor arg1,
) {
return _clang_equalCursors(
arg0,
arg1,
);
}
late final _clang_equalCursors_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor, CXCursor)>>(
'clang_equalCursors');
late final _clang_equalCursors =
_clang_equalCursors_ptr.asFunction<int Function(CXCursor, CXCursor)>();
/// Returns non-zero if cursor is null.
int clang_Cursor_isNull(
CXCursor cursor,
) {
return _clang_Cursor_isNull(
cursor,
);
}
late final _clang_Cursor_isNull_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_isNull');
late final _clang_Cursor_isNull =
_clang_Cursor_isNull_ptr.asFunction<int Function(CXCursor)>();
/// Compute a hash value for the given cursor.
int clang_hashCursor(
CXCursor arg0,
) {
return _clang_hashCursor(
arg0,
);
}
late final _clang_hashCursor_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_hashCursor');
late final _clang_hashCursor =
_clang_hashCursor_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve the kind of the given cursor.
int clang_getCursorKind(
CXCursor arg0,
) {
return _clang_getCursorKind(
arg0,
);
}
late final _clang_getCursorKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorKind');
late final _clang_getCursorKind =
_clang_getCursorKind_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor kind represents a declaration.
int clang_isDeclaration(
int arg0,
) {
return _clang_isDeclaration(
arg0,
);
}
late final _clang_isDeclaration_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isDeclaration');
late final _clang_isDeclaration =
_clang_isDeclaration_ptr.asFunction<int Function(int)>();
/// Determine whether the given declaration is invalid.
int clang_isInvalidDeclaration(
CXCursor arg0,
) {
return _clang_isInvalidDeclaration(
arg0,
);
}
late final _clang_isInvalidDeclaration_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_isInvalidDeclaration');
late final _clang_isInvalidDeclaration =
_clang_isInvalidDeclaration_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor kind represents a simple reference.
int clang_isReference(
int arg0,
) {
return _clang_isReference(
arg0,
);
}
late final _clang_isReference_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isReference');
late final _clang_isReference =
_clang_isReference_ptr.asFunction<int Function(int)>();
/// Determine whether the given cursor kind represents an expression.
int clang_isExpression(
int arg0,
) {
return _clang_isExpression(
arg0,
);
}
late final _clang_isExpression_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isExpression');
late final _clang_isExpression =
_clang_isExpression_ptr.asFunction<int Function(int)>();
/// Determine whether the given cursor kind represents a statement.
int clang_isStatement(
int arg0,
) {
return _clang_isStatement(
arg0,
);
}
late final _clang_isStatement_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isStatement');
late final _clang_isStatement =
_clang_isStatement_ptr.asFunction<int Function(int)>();
/// Determine whether the given cursor kind represents an attribute.
int clang_isAttribute(
int arg0,
) {
return _clang_isAttribute(
arg0,
);
}
late final _clang_isAttribute_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isAttribute');
late final _clang_isAttribute =
_clang_isAttribute_ptr.asFunction<int Function(int)>();
/// Determine whether the given cursor has any attributes.
int clang_Cursor_hasAttrs(
CXCursor C,
) {
return _clang_Cursor_hasAttrs(
C,
);
}
late final _clang_Cursor_hasAttrs_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_hasAttrs');
late final _clang_Cursor_hasAttrs =
_clang_Cursor_hasAttrs_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor kind represents an invalid cursor.
int clang_isInvalid(
int arg0,
) {
return _clang_isInvalid(
arg0,
);
}
late final _clang_isInvalid_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isInvalid');
late final _clang_isInvalid =
_clang_isInvalid_ptr.asFunction<int Function(int)>();
/// Determine whether the given cursor kind represents a translation unit.
int clang_isTranslationUnit(
int arg0,
) {
return _clang_isTranslationUnit(
arg0,
);
}
late final _clang_isTranslationUnit_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isTranslationUnit');
late final _clang_isTranslationUnit =
_clang_isTranslationUnit_ptr.asFunction<int Function(int)>();
/// * Determine whether the given cursor represents a preprocessing element,
/// such as a preprocessor directive or macro instantiation.
int clang_isPreprocessing(
int arg0,
) {
return _clang_isPreprocessing(
arg0,
);
}
late final _clang_isPreprocessing_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isPreprocessing');
late final _clang_isPreprocessing =
_clang_isPreprocessing_ptr.asFunction<int Function(int)>();
/// * Determine whether the given cursor represents a currently unexposed
/// piece of the AST (e.g., CXCursor_UnexposedStmt).
int clang_isUnexposed(
int arg0,
) {
return _clang_isUnexposed(
arg0,
);
}
late final _clang_isUnexposed_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(ffi.Int32)>>(
'clang_isUnexposed');
late final _clang_isUnexposed =
_clang_isUnexposed_ptr.asFunction<int Function(int)>();
/// Determine the linkage of the entity referred to by a given cursor.
int clang_getCursorLinkage(
CXCursor cursor,
) {
return _clang_getCursorLinkage(
cursor,
);
}
late final _clang_getCursorLinkage_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorLinkage');
late final _clang_getCursorLinkage =
_clang_getCursorLinkage_ptr.asFunction<int Function(CXCursor)>();
/// Describe the visibility of the entity referred to by a cursor.
int clang_getCursorVisibility(
CXCursor cursor,
) {
return _clang_getCursorVisibility(
cursor,
);
}
late final _clang_getCursorVisibility_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorVisibility');
late final _clang_getCursorVisibility =
_clang_getCursorVisibility_ptr.asFunction<int Function(CXCursor)>();
/// Determine the availability of the entity that this cursor refers to,
/// taking the current target platform into account.
int clang_getCursorAvailability(
CXCursor cursor,
) {
return _clang_getCursorAvailability(
cursor,
);
}
late final _clang_getCursorAvailability_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorAvailability');
late final _clang_getCursorAvailability =
_clang_getCursorAvailability_ptr.asFunction<int Function(CXCursor)>();
/// Determine the availability of the entity that this cursor refers to on any
/// platforms for which availability information is known.
int clang_getCursorPlatformAvailability(
CXCursor cursor,
ffi.Pointer<ffi.Int32> always_deprecated,
ffi.Pointer<CXString> deprecated_message,
ffi.Pointer<ffi.Int32> always_unavailable,
ffi.Pointer<CXString> unavailable_message,
ffi.Pointer<CXPlatformAvailability> availability,
int availability_size,
) {
return _clang_getCursorPlatformAvailability(
cursor,
always_deprecated,
deprecated_message,
always_unavailable,
unavailable_message,
availability,
availability_size,
);
}
late final _clang_getCursorPlatformAvailability_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXCursor,
ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>,
ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>,
ffi.Pointer<CXPlatformAvailability>,
ffi.Int32)>>('clang_getCursorPlatformAvailability');
late final _clang_getCursorPlatformAvailability =
_clang_getCursorPlatformAvailability_ptr.asFunction<
int Function(
CXCursor,
ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>,
ffi.Pointer<ffi.Int32>,
ffi.Pointer<CXString>,
ffi.Pointer<CXPlatformAvailability>,
int)>();
/// Free the memory associated with a CXPlatformAvailability structure.
void clang_disposeCXPlatformAvailability(
ffi.Pointer<CXPlatformAvailability> availability,
) {
return _clang_disposeCXPlatformAvailability(
availability,
);
}
late final _clang_disposeCXPlatformAvailability_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(ffi.Pointer<CXPlatformAvailability>)>>(
'clang_disposeCXPlatformAvailability');
late final _clang_disposeCXPlatformAvailability =
_clang_disposeCXPlatformAvailability_ptr
.asFunction<void Function(ffi.Pointer<CXPlatformAvailability>)>();
/// Determine the "language" of the entity referred to by a given cursor.
int clang_getCursorLanguage(
CXCursor cursor,
) {
return _clang_getCursorLanguage(
cursor,
);
}
late final _clang_getCursorLanguage_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorLanguage');
late final _clang_getCursorLanguage =
_clang_getCursorLanguage_ptr.asFunction<int Function(CXCursor)>();
/// Determine the "thread-local storage (TLS) kind" of the declaration
/// referred to by a cursor.
int clang_getCursorTLSKind(
CXCursor cursor,
) {
return _clang_getCursorTLSKind(
cursor,
);
}
late final _clang_getCursorTLSKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorTLSKind');
late final _clang_getCursorTLSKind =
_clang_getCursorTLSKind_ptr.asFunction<int Function(CXCursor)>();
/// Returns the translation unit that a cursor originated from.
CXTranslationUnit clang_Cursor_getTranslationUnit(
CXCursor arg0,
) {
return _clang_Cursor_getTranslationUnit(
arg0,
);
}
late final _clang_Cursor_getTranslationUnit_ptr =
_lookup<ffi.NativeFunction<CXTranslationUnit Function(CXCursor)>>(
'clang_Cursor_getTranslationUnit');
late final _clang_Cursor_getTranslationUnit =
_clang_Cursor_getTranslationUnit_ptr
.asFunction<CXTranslationUnit Function(CXCursor)>();
/// Creates an empty CXCursorSet.
CXCursorSet clang_createCXCursorSet() {
return _clang_createCXCursorSet();
}
late final _clang_createCXCursorSet_ptr =
_lookup<ffi.NativeFunction<CXCursorSet Function()>>(
'clang_createCXCursorSet');
late final _clang_createCXCursorSet =
_clang_createCXCursorSet_ptr.asFunction<CXCursorSet Function()>();
/// Disposes a CXCursorSet and releases its associated memory.
void clang_disposeCXCursorSet(
CXCursorSet cset,
) {
return _clang_disposeCXCursorSet(
cset,
);
}
late final _clang_disposeCXCursorSet_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXCursorSet)>>(
'clang_disposeCXCursorSet');
late final _clang_disposeCXCursorSet =
_clang_disposeCXCursorSet_ptr.asFunction<void Function(CXCursorSet)>();
/// Queries a CXCursorSet to see if it contains a specific CXCursor.
int clang_CXCursorSet_contains(
CXCursorSet cset,
CXCursor cursor,
) {
return _clang_CXCursorSet_contains(
cset,
cursor,
);
}
late final _clang_CXCursorSet_contains_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursorSet, CXCursor)>>(
'clang_CXCursorSet_contains');
late final _clang_CXCursorSet_contains = _clang_CXCursorSet_contains_ptr
.asFunction<int Function(CXCursorSet, CXCursor)>();
/// Inserts a CXCursor into a CXCursorSet.
int clang_CXCursorSet_insert(
CXCursorSet cset,
CXCursor cursor,
) {
return _clang_CXCursorSet_insert(
cset,
cursor,
);
}
late final _clang_CXCursorSet_insert_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursorSet, CXCursor)>>(
'clang_CXCursorSet_insert');
late final _clang_CXCursorSet_insert = _clang_CXCursorSet_insert_ptr
.asFunction<int Function(CXCursorSet, CXCursor)>();
/// Determine the semantic parent of the given cursor.
CXCursor clang_getCursorSemanticParent(
CXCursor cursor,
) {
return _clang_getCursorSemanticParent(
cursor,
);
}
late final _clang_getCursorSemanticParent_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getCursorSemanticParent');
late final _clang_getCursorSemanticParent = _clang_getCursorSemanticParent_ptr
.asFunction<CXCursor Function(CXCursor)>();
/// Determine the lexical parent of the given cursor.
CXCursor clang_getCursorLexicalParent(
CXCursor cursor,
) {
return _clang_getCursorLexicalParent(
cursor,
);
}
late final _clang_getCursorLexicalParent_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getCursorLexicalParent');
late final _clang_getCursorLexicalParent = _clang_getCursorLexicalParent_ptr
.asFunction<CXCursor Function(CXCursor)>();
/// Determine the set of methods that are overridden by the given method.
void clang_getOverriddenCursors(
CXCursor cursor,
ffi.Pointer<ffi.Pointer<CXCursor>> overridden,
ffi.Pointer<ffi.Uint32> num_overridden,
) {
return _clang_getOverriddenCursors(
cursor,
overridden,
num_overridden,
);
}
late final _clang_getOverriddenCursors_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXCursor, ffi.Pointer<ffi.Pointer<CXCursor>>,
ffi.Pointer<ffi.Uint32>)>>('clang_getOverriddenCursors');
late final _clang_getOverriddenCursors =
_clang_getOverriddenCursors_ptr.asFunction<
void Function(CXCursor, ffi.Pointer<ffi.Pointer<CXCursor>>,
ffi.Pointer<ffi.Uint32>)>();
/// Free the set of overridden cursors returned by
/// clang_getOverriddenCursors().
void clang_disposeOverriddenCursors(
ffi.Pointer<CXCursor> overridden,
) {
return _clang_disposeOverriddenCursors(
overridden,
);
}
late final _clang_disposeOverriddenCursors_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<CXCursor>)>>(
'clang_disposeOverriddenCursors');
late final _clang_disposeOverriddenCursors =
_clang_disposeOverriddenCursors_ptr
.asFunction<void Function(ffi.Pointer<CXCursor>)>();
/// Retrieve the file that is included by the given inclusion directive
/// cursor.
CXFile clang_getIncludedFile(
CXCursor cursor,
) {
return _clang_getIncludedFile(
cursor,
);
}
late final _clang_getIncludedFile_ptr =
_lookup<ffi.NativeFunction<CXFile Function(CXCursor)>>(
'clang_getIncludedFile');
late final _clang_getIncludedFile =
_clang_getIncludedFile_ptr.asFunction<CXFile Function(CXCursor)>();
/// Map a source location to the cursor that describes the entity at that
/// location in the source code.
CXCursor clang_getCursor(
CXTranslationUnit arg0,
CXSourceLocation arg1,
) {
return _clang_getCursor(
arg0,
arg1,
);
}
late final _clang_getCursor_ptr = _lookup<
ffi.NativeFunction<
CXCursor Function(
CXTranslationUnit, CXSourceLocation)>>('clang_getCursor');
late final _clang_getCursor = _clang_getCursor_ptr
.asFunction<CXCursor Function(CXTranslationUnit, CXSourceLocation)>();
/// Retrieve the physical location of the source constructor referenced by the
/// given cursor.
CXSourceLocation clang_getCursorLocation(
CXCursor arg0,
) {
return _clang_getCursorLocation(
arg0,
);
}
late final _clang_getCursorLocation_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function(CXCursor)>>(
'clang_getCursorLocation');
late final _clang_getCursorLocation = _clang_getCursorLocation_ptr
.asFunction<CXSourceLocation Function(CXCursor)>();
/// Retrieve the physical extent of the source construct referenced by the
/// given cursor.
CXSourceRange clang_getCursorExtent(
CXCursor arg0,
) {
return _clang_getCursorExtent(
arg0,
);
}
late final _clang_getCursorExtent_ptr =
_lookup<ffi.NativeFunction<CXSourceRange Function(CXCursor)>>(
'clang_getCursorExtent');
late final _clang_getCursorExtent =
_clang_getCursorExtent_ptr.asFunction<CXSourceRange Function(CXCursor)>();
/// Retrieve the type of a CXCursor (if any).
CXType clang_getCursorType(
CXCursor C,
) {
return _clang_getCursorType(
C,
);
}
late final _clang_getCursorType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_getCursorType');
late final _clang_getCursorType =
_clang_getCursorType_ptr.asFunction<CXType Function(CXCursor)>();
/// Pretty-print the underlying type using the rules of the language of the
/// translation unit from which it came.
CXString clang_getTypeSpelling(
CXType CT,
) {
return _clang_getTypeSpelling(
CT,
);
}
late final _clang_getTypeSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXType)>>(
'clang_getTypeSpelling');
late final _clang_getTypeSpelling =
_clang_getTypeSpelling_ptr.asFunction<CXString Function(CXType)>();
/// Retrieve the underlying type of a typedef declaration.
CXType clang_getTypedefDeclUnderlyingType(
CXCursor C,
) {
return _clang_getTypedefDeclUnderlyingType(
C,
);
}
late final _clang_getTypedefDeclUnderlyingType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_getTypedefDeclUnderlyingType');
late final _clang_getTypedefDeclUnderlyingType =
_clang_getTypedefDeclUnderlyingType_ptr
.asFunction<CXType Function(CXCursor)>();
/// Retrieve the integer type of an enum declaration.
CXType clang_getEnumDeclIntegerType(
CXCursor C,
) {
return _clang_getEnumDeclIntegerType(
C,
);
}
late final _clang_getEnumDeclIntegerType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_getEnumDeclIntegerType');
late final _clang_getEnumDeclIntegerType =
_clang_getEnumDeclIntegerType_ptr.asFunction<CXType Function(CXCursor)>();
/// Retrieve the integer value of an enum constant declaration as a signed
/// long long.
int clang_getEnumConstantDeclValue(
CXCursor C,
) {
return _clang_getEnumConstantDeclValue(
C,
);
}
late final _clang_getEnumConstantDeclValue_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXCursor)>>(
'clang_getEnumConstantDeclValue');
late final _clang_getEnumConstantDeclValue =
_clang_getEnumConstantDeclValue_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve the integer value of an enum constant declaration as an unsigned
/// long long.
int clang_getEnumConstantDeclUnsignedValue(
CXCursor C,
) {
return _clang_getEnumConstantDeclUnsignedValue(
C,
);
}
late final _clang_getEnumConstantDeclUnsignedValue_ptr =
_lookup<ffi.NativeFunction<ffi.Uint64 Function(CXCursor)>>(
'clang_getEnumConstantDeclUnsignedValue');
late final _clang_getEnumConstantDeclUnsignedValue =
_clang_getEnumConstantDeclUnsignedValue_ptr
.asFunction<int Function(CXCursor)>();
/// Retrieve the bit width of a bit field declaration as an integer.
int clang_getFieldDeclBitWidth(
CXCursor C,
) {
return _clang_getFieldDeclBitWidth(
C,
);
}
late final _clang_getFieldDeclBitWidth_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getFieldDeclBitWidth');
late final _clang_getFieldDeclBitWidth =
_clang_getFieldDeclBitWidth_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve the number of non-variadic arguments associated with a given
/// cursor.
int clang_Cursor_getNumArguments(
CXCursor C,
) {
return _clang_Cursor_getNumArguments(
C,
);
}
late final _clang_Cursor_getNumArguments_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_getNumArguments');
late final _clang_Cursor_getNumArguments =
_clang_Cursor_getNumArguments_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve the argument cursor of a function or method.
CXCursor clang_Cursor_getArgument(
CXCursor C,
int i,
) {
return _clang_Cursor_getArgument(
C,
i,
);
}
late final _clang_Cursor_getArgument_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getArgument');
late final _clang_Cursor_getArgument = _clang_Cursor_getArgument_ptr
.asFunction<CXCursor Function(CXCursor, int)>();
/// Returns the number of template args of a function decl representing a
/// template specialization.
int clang_Cursor_getNumTemplateArguments(
CXCursor C,
) {
return _clang_Cursor_getNumTemplateArguments(
C,
);
}
late final _clang_Cursor_getNumTemplateArguments_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_getNumTemplateArguments');
late final _clang_Cursor_getNumTemplateArguments =
_clang_Cursor_getNumTemplateArguments_ptr
.asFunction<int Function(CXCursor)>();
/// Retrieve the kind of the I'th template argument of the CXCursor C.
int clang_Cursor_getTemplateArgumentKind(
CXCursor C,
int I,
) {
return _clang_Cursor_getTemplateArgumentKind(
C,
I,
);
}
late final _clang_Cursor_getTemplateArgumentKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getTemplateArgumentKind');
late final _clang_Cursor_getTemplateArgumentKind =
_clang_Cursor_getTemplateArgumentKind_ptr
.asFunction<int Function(CXCursor, int)>();
/// Retrieve a CXType representing the type of a TemplateArgument of a
/// function decl representing a template specialization.
CXType clang_Cursor_getTemplateArgumentType(
CXCursor C,
int I,
) {
return _clang_Cursor_getTemplateArgumentType(
C,
I,
);
}
late final _clang_Cursor_getTemplateArgumentType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getTemplateArgumentType');
late final _clang_Cursor_getTemplateArgumentType =
_clang_Cursor_getTemplateArgumentType_ptr
.asFunction<CXType Function(CXCursor, int)>();
/// Retrieve the value of an Integral TemplateArgument (of a function decl
/// representing a template specialization) as a signed long long.
int clang_Cursor_getTemplateArgumentValue(
CXCursor C,
int I,
) {
return _clang_Cursor_getTemplateArgumentValue(
C,
I,
);
}
late final _clang_Cursor_getTemplateArgumentValue_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getTemplateArgumentValue');
late final _clang_Cursor_getTemplateArgumentValue =
_clang_Cursor_getTemplateArgumentValue_ptr
.asFunction<int Function(CXCursor, int)>();
/// Retrieve the value of an Integral TemplateArgument (of a function decl
/// representing a template specialization) as an unsigned long long.
int clang_Cursor_getTemplateArgumentUnsignedValue(
CXCursor C,
int I,
) {
return _clang_Cursor_getTemplateArgumentUnsignedValue(
C,
I,
);
}
late final _clang_Cursor_getTemplateArgumentUnsignedValue_ptr =
_lookup<ffi.NativeFunction<ffi.Uint64 Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getTemplateArgumentUnsignedValue');
late final _clang_Cursor_getTemplateArgumentUnsignedValue =
_clang_Cursor_getTemplateArgumentUnsignedValue_ptr
.asFunction<int Function(CXCursor, int)>();
/// Determine whether two CXTypes represent the same type.
int clang_equalTypes(
CXType A,
CXType B,
) {
return _clang_equalTypes(
A,
B,
);
}
late final _clang_equalTypes_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType, CXType)>>(
'clang_equalTypes');
late final _clang_equalTypes =
_clang_equalTypes_ptr.asFunction<int Function(CXType, CXType)>();
/// Return the canonical type for a CXType.
CXType clang_getCanonicalType(
CXType T,
) {
return _clang_getCanonicalType(
T,
);
}
late final _clang_getCanonicalType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_getCanonicalType');
late final _clang_getCanonicalType =
_clang_getCanonicalType_ptr.asFunction<CXType Function(CXType)>();
/// Determine whether a CXType has the "const" qualifier set, without looking
/// through typedefs that may have added "const" at a different level.
int clang_isConstQualifiedType(
CXType T,
) {
return _clang_isConstQualifiedType(
T,
);
}
late final _clang_isConstQualifiedType_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_isConstQualifiedType');
late final _clang_isConstQualifiedType =
_clang_isConstQualifiedType_ptr.asFunction<int Function(CXType)>();
/// Determine whether a CXCursor that is a macro, is function like.
int clang_Cursor_isMacroFunctionLike(
CXCursor C,
) {
return _clang_Cursor_isMacroFunctionLike(
C,
);
}
late final _clang_Cursor_isMacroFunctionLike_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isMacroFunctionLike');
late final _clang_Cursor_isMacroFunctionLike =
_clang_Cursor_isMacroFunctionLike_ptr
.asFunction<int Function(CXCursor)>();
/// Determine whether a CXCursor that is a macro, is a builtin one.
int clang_Cursor_isMacroBuiltin(
CXCursor C,
) {
return _clang_Cursor_isMacroBuiltin(
C,
);
}
late final _clang_Cursor_isMacroBuiltin_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isMacroBuiltin');
late final _clang_Cursor_isMacroBuiltin =
_clang_Cursor_isMacroBuiltin_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether a CXCursor that is a function declaration, is an inline
/// declaration.
int clang_Cursor_isFunctionInlined(
CXCursor C,
) {
return _clang_Cursor_isFunctionInlined(
C,
);
}
late final _clang_Cursor_isFunctionInlined_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isFunctionInlined');
late final _clang_Cursor_isFunctionInlined =
_clang_Cursor_isFunctionInlined_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether a CXType has the "volatile" qualifier set, without
/// looking through typedefs that may have added "volatile" at a different
/// level.
int clang_isVolatileQualifiedType(
CXType T,
) {
return _clang_isVolatileQualifiedType(
T,
);
}
late final _clang_isVolatileQualifiedType_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_isVolatileQualifiedType');
late final _clang_isVolatileQualifiedType =
_clang_isVolatileQualifiedType_ptr.asFunction<int Function(CXType)>();
/// Determine whether a CXType has the "restrict" qualifier set, without
/// looking through typedefs that may have added "restrict" at a different
/// level.
int clang_isRestrictQualifiedType(
CXType T,
) {
return _clang_isRestrictQualifiedType(
T,
);
}
late final _clang_isRestrictQualifiedType_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_isRestrictQualifiedType');
late final _clang_isRestrictQualifiedType =
_clang_isRestrictQualifiedType_ptr.asFunction<int Function(CXType)>();
/// Returns the address space of the given type.
int clang_getAddressSpace(
CXType T,
) {
return _clang_getAddressSpace(
T,
);
}
late final _clang_getAddressSpace_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_getAddressSpace');
late final _clang_getAddressSpace =
_clang_getAddressSpace_ptr.asFunction<int Function(CXType)>();
/// Returns the typedef name of the given type.
CXString clang_getTypedefName(
CXType CT,
) {
return _clang_getTypedefName(
CT,
);
}
late final _clang_getTypedefName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXType)>>(
'clang_getTypedefName');
late final _clang_getTypedefName =
_clang_getTypedefName_ptr.asFunction<CXString Function(CXType)>();
/// For pointer types, returns the type of the pointee.
CXType clang_getPointeeType(
CXType T,
) {
return _clang_getPointeeType(
T,
);
}
late final _clang_getPointeeType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_getPointeeType');
late final _clang_getPointeeType =
_clang_getPointeeType_ptr.asFunction<CXType Function(CXType)>();
/// Return the cursor for the declaration of the given type.
CXCursor clang_getTypeDeclaration(
CXType T,
) {
return _clang_getTypeDeclaration(
T,
);
}
late final _clang_getTypeDeclaration_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXType)>>(
'clang_getTypeDeclaration');
late final _clang_getTypeDeclaration =
_clang_getTypeDeclaration_ptr.asFunction<CXCursor Function(CXType)>();
/// Returns the Objective-C type encoding for the specified declaration.
CXString clang_getDeclObjCTypeEncoding(
CXCursor C,
) {
return _clang_getDeclObjCTypeEncoding(
C,
);
}
late final _clang_getDeclObjCTypeEncoding_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_getDeclObjCTypeEncoding');
late final _clang_getDeclObjCTypeEncoding = _clang_getDeclObjCTypeEncoding_ptr
.asFunction<CXString Function(CXCursor)>();
/// Returns the Objective-C type encoding for the specified CXType.
CXString clang_Type_getObjCEncoding(
CXType type,
) {
return _clang_Type_getObjCEncoding(
type,
);
}
late final _clang_Type_getObjCEncoding_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXType)>>(
'clang_Type_getObjCEncoding');
late final _clang_Type_getObjCEncoding =
_clang_Type_getObjCEncoding_ptr.asFunction<CXString Function(CXType)>();
/// Retrieve the spelling of a given CXTypeKind.
CXString clang_getTypeKindSpelling(
int K,
) {
return _clang_getTypeKindSpelling(
K,
);
}
late final _clang_getTypeKindSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(ffi.Int32)>>(
'clang_getTypeKindSpelling');
late final _clang_getTypeKindSpelling =
_clang_getTypeKindSpelling_ptr.asFunction<CXString Function(int)>();
/// Retrieve the calling convention associated with a function type.
int clang_getFunctionTypeCallingConv(
CXType T,
) {
return _clang_getFunctionTypeCallingConv(
T,
);
}
late final _clang_getFunctionTypeCallingConv_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_getFunctionTypeCallingConv');
late final _clang_getFunctionTypeCallingConv =
_clang_getFunctionTypeCallingConv_ptr.asFunction<int Function(CXType)>();
/// Retrieve the return type associated with a function type.
CXType clang_getResultType(
CXType T,
) {
return _clang_getResultType(
T,
);
}
late final _clang_getResultType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_getResultType');
late final _clang_getResultType =
_clang_getResultType_ptr.asFunction<CXType Function(CXType)>();
/// Retrieve the exception specification type associated with a function type.
/// This is a value of type CXCursor_ExceptionSpecificationKind.
int clang_getExceptionSpecificationType(
CXType T,
) {
return _clang_getExceptionSpecificationType(
T,
);
}
late final _clang_getExceptionSpecificationType_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_getExceptionSpecificationType');
late final _clang_getExceptionSpecificationType =
_clang_getExceptionSpecificationType_ptr
.asFunction<int Function(CXType)>();
/// Retrieve the number of non-variadic parameters associated with a function
/// type.
int clang_getNumArgTypes(
CXType T,
) {
return _clang_getNumArgTypes(
T,
);
}
late final _clang_getNumArgTypes_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_getNumArgTypes');
late final _clang_getNumArgTypes =
_clang_getNumArgTypes_ptr.asFunction<int Function(CXType)>();
/// Retrieve the type of a parameter of a function type.
CXType clang_getArgType(
CXType T,
int i,
) {
return _clang_getArgType(
T,
i,
);
}
late final _clang_getArgType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType, ffi.Uint32)>>(
'clang_getArgType');
late final _clang_getArgType =
_clang_getArgType_ptr.asFunction<CXType Function(CXType, int)>();
/// Retrieves the base type of the ObjCObjectType.
CXType clang_Type_getObjCObjectBaseType(
CXType T,
) {
return _clang_Type_getObjCObjectBaseType(
T,
);
}
late final _clang_Type_getObjCObjectBaseType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_Type_getObjCObjectBaseType');
late final _clang_Type_getObjCObjectBaseType =
_clang_Type_getObjCObjectBaseType_ptr
.asFunction<CXType Function(CXType)>();
/// Retrieve the number of protocol references associated with an ObjC
/// object/id.
int clang_Type_getNumObjCProtocolRefs(
CXType T,
) {
return _clang_Type_getNumObjCProtocolRefs(
T,
);
}
late final _clang_Type_getNumObjCProtocolRefs_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_Type_getNumObjCProtocolRefs');
late final _clang_Type_getNumObjCProtocolRefs =
_clang_Type_getNumObjCProtocolRefs_ptr.asFunction<int Function(CXType)>();
/// Retrieve the decl for a protocol reference for an ObjC object/id.
CXCursor clang_Type_getObjCProtocolDecl(
CXType T,
int i,
) {
return _clang_Type_getObjCProtocolDecl(
T,
i,
);
}
late final _clang_Type_getObjCProtocolDecl_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXType, ffi.Uint32)>>(
'clang_Type_getObjCProtocolDecl');
late final _clang_Type_getObjCProtocolDecl =
_clang_Type_getObjCProtocolDecl_ptr
.asFunction<CXCursor Function(CXType, int)>();
/// Retreive the number of type arguments associated with an ObjC object.
int clang_Type_getNumObjCTypeArgs(
CXType T,
) {
return _clang_Type_getNumObjCTypeArgs(
T,
);
}
late final _clang_Type_getNumObjCTypeArgs_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_Type_getNumObjCTypeArgs');
late final _clang_Type_getNumObjCTypeArgs =
_clang_Type_getNumObjCTypeArgs_ptr.asFunction<int Function(CXType)>();
/// Retrieve a type argument associated with an ObjC object.
CXType clang_Type_getObjCTypeArg(
CXType T,
int i,
) {
return _clang_Type_getObjCTypeArg(
T,
i,
);
}
late final _clang_Type_getObjCTypeArg_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType, ffi.Uint32)>>(
'clang_Type_getObjCTypeArg');
late final _clang_Type_getObjCTypeArg =
_clang_Type_getObjCTypeArg_ptr.asFunction<CXType Function(CXType, int)>();
/// Return 1 if the CXType is a variadic function type, and 0 otherwise.
int clang_isFunctionTypeVariadic(
CXType T,
) {
return _clang_isFunctionTypeVariadic(
T,
);
}
late final _clang_isFunctionTypeVariadic_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_isFunctionTypeVariadic');
late final _clang_isFunctionTypeVariadic =
_clang_isFunctionTypeVariadic_ptr.asFunction<int Function(CXType)>();
/// Retrieve the return type associated with a given cursor.
CXType clang_getCursorResultType(
CXCursor C,
) {
return _clang_getCursorResultType(
C,
);
}
late final _clang_getCursorResultType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_getCursorResultType');
late final _clang_getCursorResultType =
_clang_getCursorResultType_ptr.asFunction<CXType Function(CXCursor)>();
/// Retrieve the exception specification type associated with a given cursor.
/// This is a value of type CXCursor_ExceptionSpecificationKind.
int clang_getCursorExceptionSpecificationType(
CXCursor C,
) {
return _clang_getCursorExceptionSpecificationType(
C,
);
}
late final _clang_getCursorExceptionSpecificationType_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCursorExceptionSpecificationType');
late final _clang_getCursorExceptionSpecificationType =
_clang_getCursorExceptionSpecificationType_ptr
.asFunction<int Function(CXCursor)>();
/// Return 1 if the CXType is a POD (plain old data) type, and 0 otherwise.
int clang_isPODType(
CXType T,
) {
return _clang_isPODType(
T,
);
}
late final _clang_isPODType_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_isPODType');
late final _clang_isPODType =
_clang_isPODType_ptr.asFunction<int Function(CXType)>();
/// Return the element type of an array, complex, or vector type.
CXType clang_getElementType(
CXType T,
) {
return _clang_getElementType(
T,
);
}
late final _clang_getElementType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_getElementType');
late final _clang_getElementType =
_clang_getElementType_ptr.asFunction<CXType Function(CXType)>();
/// Return the number of elements of an array or vector type.
int clang_getNumElements(
CXType T,
) {
return _clang_getNumElements(
T,
);
}
late final _clang_getNumElements_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXType)>>(
'clang_getNumElements');
late final _clang_getNumElements =
_clang_getNumElements_ptr.asFunction<int Function(CXType)>();
/// Return the element type of an array type.
CXType clang_getArrayElementType(
CXType T,
) {
return _clang_getArrayElementType(
T,
);
}
late final _clang_getArrayElementType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_getArrayElementType');
late final _clang_getArrayElementType =
_clang_getArrayElementType_ptr.asFunction<CXType Function(CXType)>();
/// Return the array size of a constant array.
int clang_getArraySize(
CXType T,
) {
return _clang_getArraySize(
T,
);
}
late final _clang_getArraySize_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXType)>>(
'clang_getArraySize');
late final _clang_getArraySize =
_clang_getArraySize_ptr.asFunction<int Function(CXType)>();
/// Retrieve the type named by the qualified-id.
CXType clang_Type_getNamedType(
CXType T,
) {
return _clang_Type_getNamedType(
T,
);
}
late final _clang_Type_getNamedType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_Type_getNamedType');
late final _clang_Type_getNamedType =
_clang_Type_getNamedType_ptr.asFunction<CXType Function(CXType)>();
/// Determine if a typedef is 'transparent' tag.
int clang_Type_isTransparentTagTypedef(
CXType T,
) {
return _clang_Type_isTransparentTagTypedef(
T,
);
}
late final _clang_Type_isTransparentTagTypedef_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXType)>>(
'clang_Type_isTransparentTagTypedef');
late final _clang_Type_isTransparentTagTypedef =
_clang_Type_isTransparentTagTypedef_ptr
.asFunction<int Function(CXType)>();
/// Retrieve the nullability kind of a pointer type.
int clang_Type_getNullability(
CXType T,
) {
return _clang_Type_getNullability(
T,
);
}
late final _clang_Type_getNullability_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_Type_getNullability');
late final _clang_Type_getNullability =
_clang_Type_getNullability_ptr.asFunction<int Function(CXType)>();
/// Return the alignment of a type in bytes as per C++[expr.alignof] standard.
int clang_Type_getAlignOf(
CXType T,
) {
return _clang_Type_getAlignOf(
T,
);
}
late final _clang_Type_getAlignOf_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXType)>>(
'clang_Type_getAlignOf');
late final _clang_Type_getAlignOf =
_clang_Type_getAlignOf_ptr.asFunction<int Function(CXType)>();
/// Return the class type of an member pointer type.
CXType clang_Type_getClassType(
CXType T,
) {
return _clang_Type_getClassType(
T,
);
}
late final _clang_Type_getClassType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_Type_getClassType');
late final _clang_Type_getClassType =
_clang_Type_getClassType_ptr.asFunction<CXType Function(CXType)>();
/// Return the size of a type in bytes as per C++[expr.sizeof] standard.
int clang_Type_getSizeOf(
CXType T,
) {
return _clang_Type_getSizeOf(
T,
);
}
late final _clang_Type_getSizeOf_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXType)>>(
'clang_Type_getSizeOf');
late final _clang_Type_getSizeOf =
_clang_Type_getSizeOf_ptr.asFunction<int Function(CXType)>();
/// Return the offset of a field named S in a record of type T in bits as it
/// would be returned by __offsetof__ as per C++11[18.2p4]
int clang_Type_getOffsetOf(
CXType T,
ffi.Pointer<ffi.Int8> S,
) {
return _clang_Type_getOffsetOf(
T,
S,
);
}
late final _clang_Type_getOffsetOf_ptr = _lookup<
ffi.NativeFunction<
ffi.Int64 Function(
CXType, ffi.Pointer<ffi.Int8>)>>('clang_Type_getOffsetOf');
late final _clang_Type_getOffsetOf = _clang_Type_getOffsetOf_ptr
.asFunction<int Function(CXType, ffi.Pointer<ffi.Int8>)>();
/// Return the type that was modified by this attributed type.
CXType clang_Type_getModifiedType(
CXType T,
) {
return _clang_Type_getModifiedType(
T,
);
}
late final _clang_Type_getModifiedType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType)>>(
'clang_Type_getModifiedType');
late final _clang_Type_getModifiedType =
_clang_Type_getModifiedType_ptr.asFunction<CXType Function(CXType)>();
/// Return the offset of the field represented by the Cursor.
int clang_Cursor_getOffsetOfField(
CXCursor C,
) {
return _clang_Cursor_getOffsetOfField(
C,
);
}
late final _clang_Cursor_getOffsetOfField_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXCursor)>>(
'clang_Cursor_getOffsetOfField');
late final _clang_Cursor_getOffsetOfField =
_clang_Cursor_getOffsetOfField_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor represents an anonymous tag or
/// namespace
int clang_Cursor_isAnonymous(
CXCursor C,
) {
return _clang_Cursor_isAnonymous(
C,
);
}
late final _clang_Cursor_isAnonymous_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isAnonymous');
late final _clang_Cursor_isAnonymous =
_clang_Cursor_isAnonymous_ptr.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor represents an anonymous record
/// declaration.
int clang_Cursor_isAnonymousRecordDecl(
CXCursor C,
) {
return _clang_Cursor_isAnonymousRecordDecl(
C,
);
}
late final _clang_Cursor_isAnonymousRecordDecl_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isAnonymousRecordDecl');
late final _clang_Cursor_isAnonymousRecordDecl =
_clang_Cursor_isAnonymousRecordDecl_ptr
.asFunction<int Function(CXCursor)>();
/// Determine whether the given cursor represents an inline namespace
/// declaration.
int clang_Cursor_isInlineNamespace(
CXCursor C,
) {
return _clang_Cursor_isInlineNamespace(
C,
);
}
late final _clang_Cursor_isInlineNamespace_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isInlineNamespace');
late final _clang_Cursor_isInlineNamespace =
_clang_Cursor_isInlineNamespace_ptr.asFunction<int Function(CXCursor)>();
/// Returns the number of template arguments for given template
/// specialization, or -1 if type T is not a template specialization.
int clang_Type_getNumTemplateArguments(
CXType T,
) {
return _clang_Type_getNumTemplateArguments(
T,
);
}
late final _clang_Type_getNumTemplateArguments_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_Type_getNumTemplateArguments');
late final _clang_Type_getNumTemplateArguments =
_clang_Type_getNumTemplateArguments_ptr
.asFunction<int Function(CXType)>();
/// Returns the type template argument of a template class specialization at
/// given index.
CXType clang_Type_getTemplateArgumentAsType(
CXType T,
int i,
) {
return _clang_Type_getTemplateArgumentAsType(
T,
i,
);
}
late final _clang_Type_getTemplateArgumentAsType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXType, ffi.Uint32)>>(
'clang_Type_getTemplateArgumentAsType');
late final _clang_Type_getTemplateArgumentAsType =
_clang_Type_getTemplateArgumentAsType_ptr
.asFunction<CXType Function(CXType, int)>();
/// Retrieve the ref-qualifier kind of a function or method.
int clang_Type_getCXXRefQualifier(
CXType T,
) {
return _clang_Type_getCXXRefQualifier(
T,
);
}
late final _clang_Type_getCXXRefQualifier_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXType)>>(
'clang_Type_getCXXRefQualifier');
late final _clang_Type_getCXXRefQualifier =
_clang_Type_getCXXRefQualifier_ptr.asFunction<int Function(CXType)>();
/// Returns non-zero if the cursor specifies a Record member that is a
/// bitfield.
int clang_Cursor_isBitField(
CXCursor C,
) {
return _clang_Cursor_isBitField(
C,
);
}
late final _clang_Cursor_isBitField_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isBitField');
late final _clang_Cursor_isBitField =
_clang_Cursor_isBitField_ptr.asFunction<int Function(CXCursor)>();
/// Returns 1 if the base class specified by the cursor with kind
/// CX_CXXBaseSpecifier is virtual.
int clang_isVirtualBase(
CXCursor arg0,
) {
return _clang_isVirtualBase(
arg0,
);
}
late final _clang_isVirtualBase_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_isVirtualBase');
late final _clang_isVirtualBase =
_clang_isVirtualBase_ptr.asFunction<int Function(CXCursor)>();
/// Returns the access control level for the referenced object.
int clang_getCXXAccessSpecifier(
CXCursor arg0,
) {
return _clang_getCXXAccessSpecifier(
arg0,
);
}
late final _clang_getCXXAccessSpecifier_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getCXXAccessSpecifier');
late final _clang_getCXXAccessSpecifier =
_clang_getCXXAccessSpecifier_ptr.asFunction<int Function(CXCursor)>();
/// Returns the storage class for a function or variable declaration.
int clang_Cursor_getStorageClass(
CXCursor arg0,
) {
return _clang_Cursor_getStorageClass(
arg0,
);
}
late final _clang_Cursor_getStorageClass_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_getStorageClass');
late final _clang_Cursor_getStorageClass =
_clang_Cursor_getStorageClass_ptr.asFunction<int Function(CXCursor)>();
/// Determine the number of overloaded declarations referenced by a
/// CXCursor_OverloadedDeclRef cursor.
int clang_getNumOverloadedDecls(
CXCursor cursor,
) {
return _clang_getNumOverloadedDecls(
cursor,
);
}
late final _clang_getNumOverloadedDecls_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_getNumOverloadedDecls');
late final _clang_getNumOverloadedDecls =
_clang_getNumOverloadedDecls_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve a cursor for one of the overloaded declarations referenced by a
/// CXCursor_OverloadedDeclRef cursor.
CXCursor clang_getOverloadedDecl(
CXCursor cursor,
int index,
) {
return _clang_getOverloadedDecl(
cursor,
index,
);
}
late final _clang_getOverloadedDecl_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor, ffi.Uint32)>>(
'clang_getOverloadedDecl');
late final _clang_getOverloadedDecl = _clang_getOverloadedDecl_ptr
.asFunction<CXCursor Function(CXCursor, int)>();
/// For cursors representing an iboutletcollection attribute, this function
/// returns the collection element type.
CXType clang_getIBOutletCollectionType(
CXCursor arg0,
) {
return _clang_getIBOutletCollectionType(
arg0,
);
}
late final _clang_getIBOutletCollectionType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_getIBOutletCollectionType');
late final _clang_getIBOutletCollectionType =
_clang_getIBOutletCollectionType_ptr
.asFunction<CXType Function(CXCursor)>();
/// Visit the children of a particular cursor.
int clang_visitChildren(
CXCursor parent,
CXCursorVisitor visitor,
CXClientData client_data,
) {
return _clang_visitChildren(
parent,
visitor,
client_data,
);
}
late final _clang_visitChildren_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(
CXCursor, CXCursorVisitor, CXClientData)>>('clang_visitChildren');
late final _clang_visitChildren = _clang_visitChildren_ptr
.asFunction<int Function(CXCursor, CXCursorVisitor, CXClientData)>();
/// Retrieve a Unified Symbol Resolution (USR) for the entity referenced by
/// the given cursor.
CXString clang_getCursorUSR(
CXCursor arg0,
) {
return _clang_getCursorUSR(
arg0,
);
}
late final _clang_getCursorUSR_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_getCursorUSR');
late final _clang_getCursorUSR =
_clang_getCursorUSR_ptr.asFunction<CXString Function(CXCursor)>();
/// Construct a USR for a specified Objective-C class.
CXString clang_constructUSR_ObjCClass(
ffi.Pointer<ffi.Int8> class_name,
) {
return _clang_constructUSR_ObjCClass(
class_name,
);
}
late final _clang_constructUSR_ObjCClass_ptr =
_lookup<ffi.NativeFunction<CXString Function(ffi.Pointer<ffi.Int8>)>>(
'clang_constructUSR_ObjCClass');
late final _clang_constructUSR_ObjCClass = _clang_constructUSR_ObjCClass_ptr
.asFunction<CXString Function(ffi.Pointer<ffi.Int8>)>();
/// Construct a USR for a specified Objective-C category.
CXString clang_constructUSR_ObjCCategory(
ffi.Pointer<ffi.Int8> class_name,
ffi.Pointer<ffi.Int8> category_name,
) {
return _clang_constructUSR_ObjCCategory(
class_name,
category_name,
);
}
late final _clang_constructUSR_ObjCCategory_ptr = _lookup<
ffi.NativeFunction<
CXString Function(ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Int8>)>>('clang_constructUSR_ObjCCategory');
late final _clang_constructUSR_ObjCCategory =
_clang_constructUSR_ObjCCategory_ptr.asFunction<
CXString Function(ffi.Pointer<ffi.Int8>, ffi.Pointer<ffi.Int8>)>();
/// Construct a USR for a specified Objective-C protocol.
CXString clang_constructUSR_ObjCProtocol(
ffi.Pointer<ffi.Int8> protocol_name,
) {
return _clang_constructUSR_ObjCProtocol(
protocol_name,
);
}
late final _clang_constructUSR_ObjCProtocol_ptr =
_lookup<ffi.NativeFunction<CXString Function(ffi.Pointer<ffi.Int8>)>>(
'clang_constructUSR_ObjCProtocol');
late final _clang_constructUSR_ObjCProtocol =
_clang_constructUSR_ObjCProtocol_ptr
.asFunction<CXString Function(ffi.Pointer<ffi.Int8>)>();
/// Construct a USR for a specified Objective-C instance variable and the USR
/// for its containing class.
CXString clang_constructUSR_ObjCIvar(
ffi.Pointer<ffi.Int8> name,
CXString classUSR,
) {
return _clang_constructUSR_ObjCIvar(
name,
classUSR,
);
}
late final _clang_constructUSR_ObjCIvar_ptr = _lookup<
ffi.NativeFunction<
CXString Function(
ffi.Pointer<ffi.Int8>, CXString)>>('clang_constructUSR_ObjCIvar');
late final _clang_constructUSR_ObjCIvar = _clang_constructUSR_ObjCIvar_ptr
.asFunction<CXString Function(ffi.Pointer<ffi.Int8>, CXString)>();
/// Construct a USR for a specified Objective-C method and the USR for its
/// containing class.
CXString clang_constructUSR_ObjCMethod(
ffi.Pointer<ffi.Int8> name,
int isInstanceMethod,
CXString classUSR,
) {
return _clang_constructUSR_ObjCMethod(
name,
isInstanceMethod,
classUSR,
);
}
late final _clang_constructUSR_ObjCMethod_ptr = _lookup<
ffi.NativeFunction<
CXString Function(ffi.Pointer<ffi.Int8>, ffi.Uint32,
CXString)>>('clang_constructUSR_ObjCMethod');
late final _clang_constructUSR_ObjCMethod = _clang_constructUSR_ObjCMethod_ptr
.asFunction<CXString Function(ffi.Pointer<ffi.Int8>, int, CXString)>();
/// Construct a USR for a specified Objective-C property and the USR for its
/// containing class.
CXString clang_constructUSR_ObjCProperty(
ffi.Pointer<ffi.Int8> property,
CXString classUSR,
) {
return _clang_constructUSR_ObjCProperty(
property,
classUSR,
);
}
late final _clang_constructUSR_ObjCProperty_ptr = _lookup<
ffi.NativeFunction<
CXString Function(ffi.Pointer<ffi.Int8>,
CXString)>>('clang_constructUSR_ObjCProperty');
late final _clang_constructUSR_ObjCProperty =
_clang_constructUSR_ObjCProperty_ptr
.asFunction<CXString Function(ffi.Pointer<ffi.Int8>, CXString)>();
/// Retrieve a name for the entity referenced by this cursor.
CXString clang_getCursorSpelling(
CXCursor arg0,
) {
return _clang_getCursorSpelling(
arg0,
);
}
late final _clang_getCursorSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_getCursorSpelling');
late final _clang_getCursorSpelling =
_clang_getCursorSpelling_ptr.asFunction<CXString Function(CXCursor)>();
/// Retrieve a range for a piece that forms the cursors spelling name. Most of
/// the times there is only one range for the complete spelling but for
/// Objective-C methods and Objective-C message expressions, there are
/// multiple pieces for each selector identifier.
CXSourceRange clang_Cursor_getSpellingNameRange(
CXCursor arg0,
int pieceIndex,
int options,
) {
return _clang_Cursor_getSpellingNameRange(
arg0,
pieceIndex,
options,
);
}
late final _clang_Cursor_getSpellingNameRange_ptr = _lookup<
ffi.NativeFunction<
CXSourceRange Function(CXCursor, ffi.Uint32,
ffi.Uint32)>>('clang_Cursor_getSpellingNameRange');
late final _clang_Cursor_getSpellingNameRange =
_clang_Cursor_getSpellingNameRange_ptr
.asFunction<CXSourceRange Function(CXCursor, int, int)>();
/// Get a property value for the given printing policy.
int clang_PrintingPolicy_getProperty(
CXPrintingPolicy Policy,
int Property,
) {
return _clang_PrintingPolicy_getProperty(
Policy,
Property,
);
}
late final _clang_PrintingPolicy_getProperty_ptr = _lookup<
ffi.NativeFunction<ffi.Uint32 Function(CXPrintingPolicy, ffi.Int32)>>(
'clang_PrintingPolicy_getProperty');
late final _clang_PrintingPolicy_getProperty =
_clang_PrintingPolicy_getProperty_ptr
.asFunction<int Function(CXPrintingPolicy, int)>();
/// Set a property value for the given printing policy.
void clang_PrintingPolicy_setProperty(
CXPrintingPolicy Policy,
int Property,
int Value,
) {
return _clang_PrintingPolicy_setProperty(
Policy,
Property,
Value,
);
}
late final _clang_PrintingPolicy_setProperty_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXPrintingPolicy, ffi.Int32,
ffi.Uint32)>>('clang_PrintingPolicy_setProperty');
late final _clang_PrintingPolicy_setProperty =
_clang_PrintingPolicy_setProperty_ptr
.asFunction<void Function(CXPrintingPolicy, int, int)>();
/// Retrieve the default policy for the cursor.
CXPrintingPolicy clang_getCursorPrintingPolicy(
CXCursor arg0,
) {
return _clang_getCursorPrintingPolicy(
arg0,
);
}
late final _clang_getCursorPrintingPolicy_ptr =
_lookup<ffi.NativeFunction<CXPrintingPolicy Function(CXCursor)>>(
'clang_getCursorPrintingPolicy');
late final _clang_getCursorPrintingPolicy = _clang_getCursorPrintingPolicy_ptr
.asFunction<CXPrintingPolicy Function(CXCursor)>();
/// Release a printing policy.
void clang_PrintingPolicy_dispose(
CXPrintingPolicy Policy,
) {
return _clang_PrintingPolicy_dispose(
Policy,
);
}
late final _clang_PrintingPolicy_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXPrintingPolicy)>>(
'clang_PrintingPolicy_dispose');
late final _clang_PrintingPolicy_dispose = _clang_PrintingPolicy_dispose_ptr
.asFunction<void Function(CXPrintingPolicy)>();
/// Pretty print declarations.
CXString clang_getCursorPrettyPrinted(
CXCursor Cursor,
CXPrintingPolicy Policy,
) {
return _clang_getCursorPrettyPrinted(
Cursor,
Policy,
);
}
late final _clang_getCursorPrettyPrinted_ptr = _lookup<
ffi.NativeFunction<CXString Function(CXCursor, CXPrintingPolicy)>>(
'clang_getCursorPrettyPrinted');
late final _clang_getCursorPrettyPrinted = _clang_getCursorPrettyPrinted_ptr
.asFunction<CXString Function(CXCursor, CXPrintingPolicy)>();
/// Retrieve the display name for the entity referenced by this cursor.
CXString clang_getCursorDisplayName(
CXCursor arg0,
) {
return _clang_getCursorDisplayName(
arg0,
);
}
late final _clang_getCursorDisplayName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_getCursorDisplayName');
late final _clang_getCursorDisplayName =
_clang_getCursorDisplayName_ptr.asFunction<CXString Function(CXCursor)>();
/// For a cursor that is a reference, retrieve a cursor representing the
/// entity that it references.
CXCursor clang_getCursorReferenced(
CXCursor arg0,
) {
return _clang_getCursorReferenced(
arg0,
);
}
late final _clang_getCursorReferenced_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getCursorReferenced');
late final _clang_getCursorReferenced =
_clang_getCursorReferenced_ptr.asFunction<CXCursor Function(CXCursor)>();
/// For a cursor that is either a reference to or a declaration of some
/// entity, retrieve a cursor that describes the definition of that entity.
CXCursor clang_getCursorDefinition(
CXCursor arg0,
) {
return _clang_getCursorDefinition(
arg0,
);
}
late final _clang_getCursorDefinition_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getCursorDefinition');
late final _clang_getCursorDefinition =
_clang_getCursorDefinition_ptr.asFunction<CXCursor Function(CXCursor)>();
/// Determine whether the declaration pointed to by this cursor is also a
/// definition of that entity.
int clang_isCursorDefinition(
CXCursor arg0,
) {
return _clang_isCursorDefinition(
arg0,
);
}
late final _clang_isCursorDefinition_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_isCursorDefinition');
late final _clang_isCursorDefinition =
_clang_isCursorDefinition_ptr.asFunction<int Function(CXCursor)>();
/// Retrieve the canonical cursor corresponding to the given cursor.
CXCursor clang_getCanonicalCursor(
CXCursor arg0,
) {
return _clang_getCanonicalCursor(
arg0,
);
}
late final _clang_getCanonicalCursor_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getCanonicalCursor');
late final _clang_getCanonicalCursor =
_clang_getCanonicalCursor_ptr.asFunction<CXCursor Function(CXCursor)>();
/// If the cursor points to a selector identifier in an Objective-C method or
/// message expression, this returns the selector index.
int clang_Cursor_getObjCSelectorIndex(
CXCursor arg0,
) {
return _clang_Cursor_getObjCSelectorIndex(
arg0,
);
}
late final _clang_Cursor_getObjCSelectorIndex_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_getObjCSelectorIndex');
late final _clang_Cursor_getObjCSelectorIndex =
_clang_Cursor_getObjCSelectorIndex_ptr
.asFunction<int Function(CXCursor)>();
/// Given a cursor pointing to a C++ method call or an Objective-C message,
/// returns non-zero if the method/message is "dynamic", meaning:
int clang_Cursor_isDynamicCall(
CXCursor C,
) {
return _clang_Cursor_isDynamicCall(
C,
);
}
late final _clang_Cursor_isDynamicCall_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_Cursor_isDynamicCall');
late final _clang_Cursor_isDynamicCall =
_clang_Cursor_isDynamicCall_ptr.asFunction<int Function(CXCursor)>();
/// Given a cursor pointing to an Objective-C message or property reference,
/// or C++ method call, returns the CXType of the receiver.
CXType clang_Cursor_getReceiverType(
CXCursor C,
) {
return _clang_Cursor_getReceiverType(
C,
);
}
late final _clang_Cursor_getReceiverType_ptr =
_lookup<ffi.NativeFunction<CXType Function(CXCursor)>>(
'clang_Cursor_getReceiverType');
late final _clang_Cursor_getReceiverType =
_clang_Cursor_getReceiverType_ptr.asFunction<CXType Function(CXCursor)>();
/// Given a cursor that represents a property declaration, return the
/// associated property attributes. The bits are formed from
/// CXObjCPropertyAttrKind.
int clang_Cursor_getObjCPropertyAttributes(
CXCursor C,
int reserved,
) {
return _clang_Cursor_getObjCPropertyAttributes(
C,
reserved,
);
}
late final _clang_Cursor_getObjCPropertyAttributes_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor, ffi.Uint32)>>(
'clang_Cursor_getObjCPropertyAttributes');
late final _clang_Cursor_getObjCPropertyAttributes =
_clang_Cursor_getObjCPropertyAttributes_ptr
.asFunction<int Function(CXCursor, int)>();
/// Given a cursor that represents a property declaration, return the name of
/// the method that implements the getter.
CXString clang_Cursor_getObjCPropertyGetterName(
CXCursor C,
) {
return _clang_Cursor_getObjCPropertyGetterName(
C,
);
}
late final _clang_Cursor_getObjCPropertyGetterName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_Cursor_getObjCPropertyGetterName');
late final _clang_Cursor_getObjCPropertyGetterName =
_clang_Cursor_getObjCPropertyGetterName_ptr
.asFunction<CXString Function(CXCursor)>();
/// Given a cursor that represents a property declaration, return the name of
/// the method that implements the setter, if any.
CXString clang_Cursor_getObjCPropertySetterName(
CXCursor C,
) {
return _clang_Cursor_getObjCPropertySetterName(
C,
);
}
late final _clang_Cursor_getObjCPropertySetterName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_Cursor_getObjCPropertySetterName');
late final _clang_Cursor_getObjCPropertySetterName =
_clang_Cursor_getObjCPropertySetterName_ptr
.asFunction<CXString Function(CXCursor)>();
/// Given a cursor that represents an Objective-C method or parameter
/// declaration, return the associated Objective-C qualifiers for the return
/// type or the parameter respectively. The bits are formed from
/// CXObjCDeclQualifierKind.
int clang_Cursor_getObjCDeclQualifiers(
CXCursor C,
) {
return _clang_Cursor_getObjCDeclQualifiers(
C,
);
}
late final _clang_Cursor_getObjCDeclQualifiers_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_getObjCDeclQualifiers');
late final _clang_Cursor_getObjCDeclQualifiers =
_clang_Cursor_getObjCDeclQualifiers_ptr
.asFunction<int Function(CXCursor)>();
/// Given a cursor that represents an Objective-C method or property
/// declaration, return non-zero if the declaration was affected by
/// "@optional". Returns zero if the cursor is not such a declaration or it is
/// "@required".
int clang_Cursor_isObjCOptional(
CXCursor C,
) {
return _clang_Cursor_isObjCOptional(
C,
);
}
late final _clang_Cursor_isObjCOptional_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isObjCOptional');
late final _clang_Cursor_isObjCOptional =
_clang_Cursor_isObjCOptional_ptr.asFunction<int Function(CXCursor)>();
/// Returns non-zero if the given cursor is a variadic function or method.
int clang_Cursor_isVariadic(
CXCursor C,
) {
return _clang_Cursor_isVariadic(
C,
);
}
late final _clang_Cursor_isVariadic_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_Cursor_isVariadic');
late final _clang_Cursor_isVariadic =
_clang_Cursor_isVariadic_ptr.asFunction<int Function(CXCursor)>();
/// Returns non-zero if the given cursor points to a symbol marked with
/// external_source_symbol attribute.
int clang_Cursor_isExternalSymbol(
CXCursor C,
ffi.Pointer<CXString> language,
ffi.Pointer<CXString> definedIn,
ffi.Pointer<ffi.Uint32> isGenerated,
) {
return _clang_Cursor_isExternalSymbol(
C,
language,
definedIn,
isGenerated,
);
}
late final _clang_Cursor_isExternalSymbol_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(
CXCursor,
ffi.Pointer<CXString>,
ffi.Pointer<CXString>,
ffi.Pointer<ffi.Uint32>)>>('clang_Cursor_isExternalSymbol');
late final _clang_Cursor_isExternalSymbol =
_clang_Cursor_isExternalSymbol_ptr.asFunction<
int Function(CXCursor, ffi.Pointer<CXString>, ffi.Pointer<CXString>,
ffi.Pointer<ffi.Uint32>)>();
/// Given a cursor that represents a declaration, return the associated
/// comment's source range. The range may include multiple consecutive
/// comments with whitespace in between.
CXSourceRange clang_Cursor_getCommentRange(
CXCursor C,
) {
return _clang_Cursor_getCommentRange(
C,
);
}
late final _clang_Cursor_getCommentRange_ptr =
_lookup<ffi.NativeFunction<CXSourceRange Function(CXCursor)>>(
'clang_Cursor_getCommentRange');
late final _clang_Cursor_getCommentRange = _clang_Cursor_getCommentRange_ptr
.asFunction<CXSourceRange Function(CXCursor)>();
/// Given a cursor that represents a declaration, return the associated
/// comment text, including comment markers.
CXString clang_Cursor_getRawCommentText(
CXCursor C,
) {
return _clang_Cursor_getRawCommentText(
C,
);
}
late final _clang_Cursor_getRawCommentText_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_Cursor_getRawCommentText');
late final _clang_Cursor_getRawCommentText =
_clang_Cursor_getRawCommentText_ptr
.asFunction<CXString Function(CXCursor)>();
/// Given a cursor that represents a documentable entity (e.g., declaration),
/// return the associated first paragraph.
CXString clang_Cursor_getBriefCommentText(
CXCursor C,
) {
return _clang_Cursor_getBriefCommentText(
C,
);
}
late final _clang_Cursor_getBriefCommentText_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_Cursor_getBriefCommentText');
late final _clang_Cursor_getBriefCommentText =
_clang_Cursor_getBriefCommentText_ptr
.asFunction<CXString Function(CXCursor)>();
/// Retrieve the CXString representing the mangled name of the cursor.
CXString clang_Cursor_getMangling(
CXCursor arg0,
) {
return _clang_Cursor_getMangling(
arg0,
);
}
late final _clang_Cursor_getMangling_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCursor)>>(
'clang_Cursor_getMangling');
late final _clang_Cursor_getMangling =
_clang_Cursor_getMangling_ptr.asFunction<CXString Function(CXCursor)>();
/// Retrieve the CXStrings representing the mangled symbols of the C++
/// constructor or destructor at the cursor.
ffi.Pointer<CXStringSet> clang_Cursor_getCXXManglings(
CXCursor arg0,
) {
return _clang_Cursor_getCXXManglings(
arg0,
);
}
late final _clang_Cursor_getCXXManglings_ptr =
_lookup<ffi.NativeFunction<ffi.Pointer<CXStringSet> Function(CXCursor)>>(
'clang_Cursor_getCXXManglings');
late final _clang_Cursor_getCXXManglings = _clang_Cursor_getCXXManglings_ptr
.asFunction<ffi.Pointer<CXStringSet> Function(CXCursor)>();
/// Retrieve the CXStrings representing the mangled symbols of the ObjC class
/// interface or implementation at the cursor.
ffi.Pointer<CXStringSet> clang_Cursor_getObjCManglings(
CXCursor arg0,
) {
return _clang_Cursor_getObjCManglings(
arg0,
);
}
late final _clang_Cursor_getObjCManglings_ptr =
_lookup<ffi.NativeFunction<ffi.Pointer<CXStringSet> Function(CXCursor)>>(
'clang_Cursor_getObjCManglings');
late final _clang_Cursor_getObjCManglings = _clang_Cursor_getObjCManglings_ptr
.asFunction<ffi.Pointer<CXStringSet> Function(CXCursor)>();
/// Given a CXCursor_ModuleImportDecl cursor, return the associated module.
CXModule clang_Cursor_getModule(
CXCursor C,
) {
return _clang_Cursor_getModule(
C,
);
}
late final _clang_Cursor_getModule_ptr =
_lookup<ffi.NativeFunction<CXModule Function(CXCursor)>>(
'clang_Cursor_getModule');
late final _clang_Cursor_getModule =
_clang_Cursor_getModule_ptr.asFunction<CXModule Function(CXCursor)>();
/// Given a CXFile header file, return the module that contains it, if one
/// exists.
CXModule clang_getModuleForFile(
CXTranslationUnit arg0,
CXFile arg1,
) {
return _clang_getModuleForFile(
arg0,
arg1,
);
}
late final _clang_getModuleForFile_ptr =
_lookup<ffi.NativeFunction<CXModule Function(CXTranslationUnit, CXFile)>>(
'clang_getModuleForFile');
late final _clang_getModuleForFile = _clang_getModuleForFile_ptr
.asFunction<CXModule Function(CXTranslationUnit, CXFile)>();
/// Returns the module file where the provided module object came from.
CXFile clang_Module_getASTFile(
CXModule Module,
) {
return _clang_Module_getASTFile(
Module,
);
}
late final _clang_Module_getASTFile_ptr =
_lookup<ffi.NativeFunction<CXFile Function(CXModule)>>(
'clang_Module_getASTFile');
late final _clang_Module_getASTFile =
_clang_Module_getASTFile_ptr.asFunction<CXFile Function(CXModule)>();
/// Returns the parent of a sub-module or NULL if the given module is
/// top-level, e.g. for 'std.vector' it will return the 'std' module.
CXModule clang_Module_getParent(
CXModule Module,
) {
return _clang_Module_getParent(
Module,
);
}
late final _clang_Module_getParent_ptr =
_lookup<ffi.NativeFunction<CXModule Function(CXModule)>>(
'clang_Module_getParent');
late final _clang_Module_getParent =
_clang_Module_getParent_ptr.asFunction<CXModule Function(CXModule)>();
/// Returns the name of the module, e.g. for the 'std.vector' sub-module it
/// will return "vector".
CXString clang_Module_getName(
CXModule Module,
) {
return _clang_Module_getName(
Module,
);
}
late final _clang_Module_getName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXModule)>>(
'clang_Module_getName');
late final _clang_Module_getName =
_clang_Module_getName_ptr.asFunction<CXString Function(CXModule)>();
/// Returns the full name of the module, e.g. "std.vector".
CXString clang_Module_getFullName(
CXModule Module,
) {
return _clang_Module_getFullName(
Module,
);
}
late final _clang_Module_getFullName_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXModule)>>(
'clang_Module_getFullName');
late final _clang_Module_getFullName =
_clang_Module_getFullName_ptr.asFunction<CXString Function(CXModule)>();
/// Returns non-zero if the module is a system one.
int clang_Module_isSystem(
CXModule Module,
) {
return _clang_Module_isSystem(
Module,
);
}
late final _clang_Module_isSystem_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXModule)>>(
'clang_Module_isSystem');
late final _clang_Module_isSystem =
_clang_Module_isSystem_ptr.asFunction<int Function(CXModule)>();
/// Returns the number of top level headers associated with this module.
int clang_Module_getNumTopLevelHeaders(
CXTranslationUnit arg0,
CXModule Module,
) {
return _clang_Module_getNumTopLevelHeaders(
arg0,
Module,
);
}
late final _clang_Module_getNumTopLevelHeaders_ptr = _lookup<
ffi.NativeFunction<ffi.Uint32 Function(CXTranslationUnit, CXModule)>>(
'clang_Module_getNumTopLevelHeaders');
late final _clang_Module_getNumTopLevelHeaders =
_clang_Module_getNumTopLevelHeaders_ptr
.asFunction<int Function(CXTranslationUnit, CXModule)>();
/// Returns the specified top level header associated with the module.
CXFile clang_Module_getTopLevelHeader(
CXTranslationUnit arg0,
CXModule Module,
int Index,
) {
return _clang_Module_getTopLevelHeader(
arg0,
Module,
Index,
);
}
late final _clang_Module_getTopLevelHeader_ptr = _lookup<
ffi.NativeFunction<
CXFile Function(CXTranslationUnit, CXModule,
ffi.Uint32)>>('clang_Module_getTopLevelHeader');
late final _clang_Module_getTopLevelHeader =
_clang_Module_getTopLevelHeader_ptr
.asFunction<CXFile Function(CXTranslationUnit, CXModule, int)>();
/// Determine if a C++ constructor is a converting constructor.
int clang_CXXConstructor_isConvertingConstructor(
CXCursor C,
) {
return _clang_CXXConstructor_isConvertingConstructor(
C,
);
}
late final _clang_CXXConstructor_isConvertingConstructor_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXConstructor_isConvertingConstructor');
late final _clang_CXXConstructor_isConvertingConstructor =
_clang_CXXConstructor_isConvertingConstructor_ptr
.asFunction<int Function(CXCursor)>();
/// Determine if a C++ constructor is a copy constructor.
int clang_CXXConstructor_isCopyConstructor(
CXCursor C,
) {
return _clang_CXXConstructor_isCopyConstructor(
C,
);
}
late final _clang_CXXConstructor_isCopyConstructor_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXConstructor_isCopyConstructor');
late final _clang_CXXConstructor_isCopyConstructor =
_clang_CXXConstructor_isCopyConstructor_ptr
.asFunction<int Function(CXCursor)>();
/// Determine if a C++ constructor is the default constructor.
int clang_CXXConstructor_isDefaultConstructor(
CXCursor C,
) {
return _clang_CXXConstructor_isDefaultConstructor(
C,
);
}
late final _clang_CXXConstructor_isDefaultConstructor_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXConstructor_isDefaultConstructor');
late final _clang_CXXConstructor_isDefaultConstructor =
_clang_CXXConstructor_isDefaultConstructor_ptr
.asFunction<int Function(CXCursor)>();
/// Determine if a C++ constructor is a move constructor.
int clang_CXXConstructor_isMoveConstructor(
CXCursor C,
) {
return _clang_CXXConstructor_isMoveConstructor(
C,
);
}
late final _clang_CXXConstructor_isMoveConstructor_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXConstructor_isMoveConstructor');
late final _clang_CXXConstructor_isMoveConstructor =
_clang_CXXConstructor_isMoveConstructor_ptr
.asFunction<int Function(CXCursor)>();
/// Determine if a C++ field is declared 'mutable'.
int clang_CXXField_isMutable(
CXCursor C,
) {
return _clang_CXXField_isMutable(
C,
);
}
late final _clang_CXXField_isMutable_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXField_isMutable');
late final _clang_CXXField_isMutable =
_clang_CXXField_isMutable_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ method is declared '= default'.
int clang_CXXMethod_isDefaulted(
CXCursor C,
) {
return _clang_CXXMethod_isDefaulted(
C,
);
}
late final _clang_CXXMethod_isDefaulted_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXMethod_isDefaulted');
late final _clang_CXXMethod_isDefaulted =
_clang_CXXMethod_isDefaulted_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ member function or member function template is pure
/// virtual.
int clang_CXXMethod_isPureVirtual(
CXCursor C,
) {
return _clang_CXXMethod_isPureVirtual(
C,
);
}
late final _clang_CXXMethod_isPureVirtual_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXMethod_isPureVirtual');
late final _clang_CXXMethod_isPureVirtual =
_clang_CXXMethod_isPureVirtual_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ member function or member function template is declared
/// 'static'.
int clang_CXXMethod_isStatic(
CXCursor C,
) {
return _clang_CXXMethod_isStatic(
C,
);
}
late final _clang_CXXMethod_isStatic_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXMethod_isStatic');
late final _clang_CXXMethod_isStatic =
_clang_CXXMethod_isStatic_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ member function or member function template is
/// explicitly declared 'virtual' or if it overrides a virtual method from one
/// of the base classes.
int clang_CXXMethod_isVirtual(
CXCursor C,
) {
return _clang_CXXMethod_isVirtual(
C,
);
}
late final _clang_CXXMethod_isVirtual_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXMethod_isVirtual');
late final _clang_CXXMethod_isVirtual =
_clang_CXXMethod_isVirtual_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ record is abstract, i.e. whether a class or struct has
/// a pure virtual member function.
int clang_CXXRecord_isAbstract(
CXCursor C,
) {
return _clang_CXXRecord_isAbstract(
C,
);
}
late final _clang_CXXRecord_isAbstract_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXRecord_isAbstract');
late final _clang_CXXRecord_isAbstract =
_clang_CXXRecord_isAbstract_ptr.asFunction<int Function(CXCursor)>();
/// Determine if an enum declaration refers to a scoped enum.
int clang_EnumDecl_isScoped(
CXCursor C,
) {
return _clang_EnumDecl_isScoped(
C,
);
}
late final _clang_EnumDecl_isScoped_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_EnumDecl_isScoped');
late final _clang_EnumDecl_isScoped =
_clang_EnumDecl_isScoped_ptr.asFunction<int Function(CXCursor)>();
/// Determine if a C++ member function or member function template is declared
/// 'const'.
int clang_CXXMethod_isConst(
CXCursor C,
) {
return _clang_CXXMethod_isConst(
C,
);
}
late final _clang_CXXMethod_isConst_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCursor)>>(
'clang_CXXMethod_isConst');
late final _clang_CXXMethod_isConst =
_clang_CXXMethod_isConst_ptr.asFunction<int Function(CXCursor)>();
/// Given a cursor that represents a template, determine the cursor kind of
/// the specializations would be generated by instantiating the template.
int clang_getTemplateCursorKind(
CXCursor C,
) {
return _clang_getTemplateCursorKind(
C,
);
}
late final _clang_getTemplateCursorKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCursor)>>(
'clang_getTemplateCursorKind');
late final _clang_getTemplateCursorKind =
_clang_getTemplateCursorKind_ptr.asFunction<int Function(CXCursor)>();
/// Given a cursor that may represent a specialization or instantiation of a
/// template, retrieve the cursor that represents the template that it
/// specializes or from which it was instantiated.
CXCursor clang_getSpecializedCursorTemplate(
CXCursor C,
) {
return _clang_getSpecializedCursorTemplate(
C,
);
}
late final _clang_getSpecializedCursorTemplate_ptr =
_lookup<ffi.NativeFunction<CXCursor Function(CXCursor)>>(
'clang_getSpecializedCursorTemplate');
late final _clang_getSpecializedCursorTemplate =
_clang_getSpecializedCursorTemplate_ptr
.asFunction<CXCursor Function(CXCursor)>();
/// Given a cursor that references something else, return the source range
/// covering that reference.
CXSourceRange clang_getCursorReferenceNameRange(
CXCursor C,
int NameFlags,
int PieceIndex,
) {
return _clang_getCursorReferenceNameRange(
C,
NameFlags,
PieceIndex,
);
}
late final _clang_getCursorReferenceNameRange_ptr = _lookup<
ffi.NativeFunction<
CXSourceRange Function(CXCursor, ffi.Uint32,
ffi.Uint32)>>('clang_getCursorReferenceNameRange');
late final _clang_getCursorReferenceNameRange =
_clang_getCursorReferenceNameRange_ptr
.asFunction<CXSourceRange Function(CXCursor, int, int)>();
/// Get the raw lexical token starting with the given location.
ffi.Pointer<CXToken> clang_getToken(
CXTranslationUnit TU,
CXSourceLocation Location,
) {
return _clang_getToken(
TU,
Location,
);
}
late final _clang_getToken_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXToken> Function(
CXTranslationUnit, CXSourceLocation)>>('clang_getToken');
late final _clang_getToken = _clang_getToken_ptr.asFunction<
ffi.Pointer<CXToken> Function(CXTranslationUnit, CXSourceLocation)>();
/// Determine the kind of the given token.
int clang_getTokenKind(
CXToken arg0,
) {
return _clang_getTokenKind(
arg0,
);
}
late final _clang_getTokenKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXToken)>>(
'clang_getTokenKind');
late final _clang_getTokenKind =
_clang_getTokenKind_ptr.asFunction<int Function(CXToken)>();
/// Determine the spelling of the given token.
CXString clang_getTokenSpelling(
CXTranslationUnit arg0,
CXToken arg1,
) {
return _clang_getTokenSpelling(
arg0,
arg1,
);
}
late final _clang_getTokenSpelling_ptr = _lookup<
ffi.NativeFunction<CXString Function(CXTranslationUnit, CXToken)>>(
'clang_getTokenSpelling');
late final _clang_getTokenSpelling = _clang_getTokenSpelling_ptr
.asFunction<CXString Function(CXTranslationUnit, CXToken)>();
/// Retrieve the source location of the given token.
CXSourceLocation clang_getTokenLocation(
CXTranslationUnit arg0,
CXToken arg1,
) {
return _clang_getTokenLocation(
arg0,
arg1,
);
}
late final _clang_getTokenLocation_ptr = _lookup<
ffi.NativeFunction<
CXSourceLocation Function(
CXTranslationUnit, CXToken)>>('clang_getTokenLocation');
late final _clang_getTokenLocation = _clang_getTokenLocation_ptr
.asFunction<CXSourceLocation Function(CXTranslationUnit, CXToken)>();
/// Retrieve a source range that covers the given token.
CXSourceRange clang_getTokenExtent(
CXTranslationUnit arg0,
CXToken arg1,
) {
return _clang_getTokenExtent(
arg0,
arg1,
);
}
late final _clang_getTokenExtent_ptr = _lookup<
ffi.NativeFunction<
CXSourceRange Function(
CXTranslationUnit, CXToken)>>('clang_getTokenExtent');
late final _clang_getTokenExtent = _clang_getTokenExtent_ptr
.asFunction<CXSourceRange Function(CXTranslationUnit, CXToken)>();
/// Tokenize the source code described by the given range into raw lexical
/// tokens.
void clang_tokenize(
CXTranslationUnit TU,
CXSourceRange Range,
ffi.Pointer<ffi.Pointer<CXToken>> Tokens,
ffi.Pointer<ffi.Uint32> NumTokens,
) {
return _clang_tokenize(
TU,
Range,
Tokens,
NumTokens,
);
}
late final _clang_tokenize_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXTranslationUnit,
CXSourceRange,
ffi.Pointer<ffi.Pointer<CXToken>>,
ffi.Pointer<ffi.Uint32>)>>('clang_tokenize');
late final _clang_tokenize = _clang_tokenize_ptr.asFunction<
void Function(CXTranslationUnit, CXSourceRange,
ffi.Pointer<ffi.Pointer<CXToken>>, ffi.Pointer<ffi.Uint32>)>();
/// Annotate the given set of tokens by providing cursors for each token that
/// can be mapped to a specific entity within the abstract syntax tree.
void clang_annotateTokens(
CXTranslationUnit TU,
ffi.Pointer<CXToken> Tokens,
int NumTokens,
ffi.Pointer<CXCursor> Cursors,
) {
return _clang_annotateTokens(
TU,
Tokens,
NumTokens,
Cursors,
);
}
late final _clang_annotateTokens_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXTranslationUnit, ffi.Pointer<CXToken>, ffi.Uint32,
ffi.Pointer<CXCursor>)>>('clang_annotateTokens');
late final _clang_annotateTokens = _clang_annotateTokens_ptr.asFunction<
void Function(CXTranslationUnit, ffi.Pointer<CXToken>, int,
ffi.Pointer<CXCursor>)>();
/// Free the given set of tokens.
void clang_disposeTokens(
CXTranslationUnit TU,
ffi.Pointer<CXToken> Tokens,
int NumTokens,
) {
return _clang_disposeTokens(
TU,
Tokens,
NumTokens,
);
}
late final _clang_disposeTokens_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXTranslationUnit, ffi.Pointer<CXToken>,
ffi.Uint32)>>('clang_disposeTokens');
late final _clang_disposeTokens = _clang_disposeTokens_ptr.asFunction<
void Function(CXTranslationUnit, ffi.Pointer<CXToken>, int)>();
/// These routines are used for testing and debugging, only, and should not be
/// relied upon.
CXString clang_getCursorKindSpelling(
int Kind,
) {
return _clang_getCursorKindSpelling(
Kind,
);
}
late final _clang_getCursorKindSpelling_ptr =
_lookup<ffi.NativeFunction<CXString Function(ffi.Int32)>>(
'clang_getCursorKindSpelling');
late final _clang_getCursorKindSpelling =
_clang_getCursorKindSpelling_ptr.asFunction<CXString Function(int)>();
void clang_getDefinitionSpellingAndExtent(
CXCursor arg0,
ffi.Pointer<ffi.Pointer<ffi.Int8>> startBuf,
ffi.Pointer<ffi.Pointer<ffi.Int8>> endBuf,
ffi.Pointer<ffi.Uint32> startLine,
ffi.Pointer<ffi.Uint32> startColumn,
ffi.Pointer<ffi.Uint32> endLine,
ffi.Pointer<ffi.Uint32> endColumn,
) {
return _clang_getDefinitionSpellingAndExtent(
arg0,
startBuf,
endBuf,
startLine,
startColumn,
endLine,
endColumn,
);
}
late final _clang_getDefinitionSpellingAndExtent_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXCursor,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>(
'clang_getDefinitionSpellingAndExtent');
late final _clang_getDefinitionSpellingAndExtent =
_clang_getDefinitionSpellingAndExtent_ptr.asFunction<
void Function(
CXCursor,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
void clang_enableStackTraces() {
return _clang_enableStackTraces();
}
late final _clang_enableStackTraces_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function()>>(
'clang_enableStackTraces');
late final _clang_enableStackTraces =
_clang_enableStackTraces_ptr.asFunction<void Function()>();
void clang_executeOnThread(
ffi.Pointer<ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>
fn,
ffi.Pointer<ffi.Void> user_data,
int stack_size,
) {
return _clang_executeOnThread(
fn,
user_data,
stack_size,
);
}
late final _clang_executeOnThread_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
ffi.Pointer<
ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>,
ffi.Pointer<ffi.Void>,
ffi.Uint32)>>('clang_executeOnThread');
late final _clang_executeOnThread = _clang_executeOnThread_ptr.asFunction<
void Function(
ffi.Pointer<
ffi.NativeFunction<ffi.Void Function(ffi.Pointer<ffi.Void>)>>,
ffi.Pointer<ffi.Void>,
int)>();
/// Determine the kind of a particular chunk within a completion string.
int clang_getCompletionChunkKind(
CXCompletionString completion_string,
int chunk_number,
) {
return _clang_getCompletionChunkKind(
completion_string,
chunk_number,
);
}
late final _clang_getCompletionChunkKind_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXCompletionString, ffi.Uint32)>>('clang_getCompletionChunkKind');
late final _clang_getCompletionChunkKind = _clang_getCompletionChunkKind_ptr
.asFunction<int Function(CXCompletionString, int)>();
/// Retrieve the text associated with a particular chunk within a completion
/// string.
CXString clang_getCompletionChunkText(
CXCompletionString completion_string,
int chunk_number,
) {
return _clang_getCompletionChunkText(
completion_string,
chunk_number,
);
}
late final _clang_getCompletionChunkText_ptr = _lookup<
ffi.NativeFunction<
CXString Function(
CXCompletionString, ffi.Uint32)>>('clang_getCompletionChunkText');
late final _clang_getCompletionChunkText = _clang_getCompletionChunkText_ptr
.asFunction<CXString Function(CXCompletionString, int)>();
/// Retrieve the completion string associated with a particular chunk within a
/// completion string.
CXCompletionString clang_getCompletionChunkCompletionString(
CXCompletionString completion_string,
int chunk_number,
) {
return _clang_getCompletionChunkCompletionString(
completion_string,
chunk_number,
);
}
late final _clang_getCompletionChunkCompletionString_ptr = _lookup<
ffi.NativeFunction<
CXCompletionString Function(CXCompletionString,
ffi.Uint32)>>('clang_getCompletionChunkCompletionString');
late final _clang_getCompletionChunkCompletionString =
_clang_getCompletionChunkCompletionString_ptr
.asFunction<CXCompletionString Function(CXCompletionString, int)>();
/// Retrieve the number of chunks in the given code-completion string.
int clang_getNumCompletionChunks(
CXCompletionString completion_string,
) {
return _clang_getNumCompletionChunks(
completion_string,
);
}
late final _clang_getNumCompletionChunks_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCompletionString)>>(
'clang_getNumCompletionChunks');
late final _clang_getNumCompletionChunks = _clang_getNumCompletionChunks_ptr
.asFunction<int Function(CXCompletionString)>();
/// Determine the priority of this code completion.
int clang_getCompletionPriority(
CXCompletionString completion_string,
) {
return _clang_getCompletionPriority(
completion_string,
);
}
late final _clang_getCompletionPriority_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCompletionString)>>(
'clang_getCompletionPriority');
late final _clang_getCompletionPriority = _clang_getCompletionPriority_ptr
.asFunction<int Function(CXCompletionString)>();
/// Determine the availability of the entity that this code-completion string
/// refers to.
int clang_getCompletionAvailability(
CXCompletionString completion_string,
) {
return _clang_getCompletionAvailability(
completion_string,
);
}
late final _clang_getCompletionAvailability_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXCompletionString)>>(
'clang_getCompletionAvailability');
late final _clang_getCompletionAvailability =
_clang_getCompletionAvailability_ptr
.asFunction<int Function(CXCompletionString)>();
/// Retrieve the number of annotations associated with the given completion
/// string.
int clang_getCompletionNumAnnotations(
CXCompletionString completion_string,
) {
return _clang_getCompletionNumAnnotations(
completion_string,
);
}
late final _clang_getCompletionNumAnnotations_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXCompletionString)>>(
'clang_getCompletionNumAnnotations');
late final _clang_getCompletionNumAnnotations =
_clang_getCompletionNumAnnotations_ptr
.asFunction<int Function(CXCompletionString)>();
/// Retrieve the annotation associated with the given completion string.
CXString clang_getCompletionAnnotation(
CXCompletionString completion_string,
int annotation_number,
) {
return _clang_getCompletionAnnotation(
completion_string,
annotation_number,
);
}
late final _clang_getCompletionAnnotation_ptr = _lookup<
ffi.NativeFunction<
CXString Function(CXCompletionString,
ffi.Uint32)>>('clang_getCompletionAnnotation');
late final _clang_getCompletionAnnotation = _clang_getCompletionAnnotation_ptr
.asFunction<CXString Function(CXCompletionString, int)>();
/// Retrieve the parent context of the given completion string.
CXString clang_getCompletionParent(
CXCompletionString completion_string,
ffi.Pointer<ffi.Int32> kind,
) {
return _clang_getCompletionParent(
completion_string,
kind,
);
}
late final _clang_getCompletionParent_ptr = _lookup<
ffi.NativeFunction<
CXString Function(CXCompletionString,
ffi.Pointer<ffi.Int32>)>>('clang_getCompletionParent');
late final _clang_getCompletionParent =
_clang_getCompletionParent_ptr.asFunction<
CXString Function(CXCompletionString, ffi.Pointer<ffi.Int32>)>();
/// Retrieve the brief documentation comment attached to the declaration that
/// corresponds to the given completion string.
CXString clang_getCompletionBriefComment(
CXCompletionString completion_string,
) {
return _clang_getCompletionBriefComment(
completion_string,
);
}
late final _clang_getCompletionBriefComment_ptr =
_lookup<ffi.NativeFunction<CXString Function(CXCompletionString)>>(
'clang_getCompletionBriefComment');
late final _clang_getCompletionBriefComment =
_clang_getCompletionBriefComment_ptr
.asFunction<CXString Function(CXCompletionString)>();
/// Retrieve a completion string for an arbitrary declaration or macro
/// definition cursor.
CXCompletionString clang_getCursorCompletionString(
CXCursor cursor,
) {
return _clang_getCursorCompletionString(
cursor,
);
}
late final _clang_getCursorCompletionString_ptr =
_lookup<ffi.NativeFunction<CXCompletionString Function(CXCursor)>>(
'clang_getCursorCompletionString');
late final _clang_getCursorCompletionString =
_clang_getCursorCompletionString_ptr
.asFunction<CXCompletionString Function(CXCursor)>();
/// Retrieve the number of fix-its for the given completion index.
int clang_getCompletionNumFixIts(
ffi.Pointer<CXCodeCompleteResults> results,
int completion_index,
) {
return _clang_getCompletionNumFixIts(
results,
completion_index,
);
}
late final _clang_getCompletionNumFixIts_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(ffi.Pointer<CXCodeCompleteResults>,
ffi.Uint32)>>('clang_getCompletionNumFixIts');
late final _clang_getCompletionNumFixIts = _clang_getCompletionNumFixIts_ptr
.asFunction<int Function(ffi.Pointer<CXCodeCompleteResults>, int)>();
/// Fix-its that *must* be applied before inserting the text for the
/// corresponding completion.
CXString clang_getCompletionFixIt(
ffi.Pointer<CXCodeCompleteResults> results,
int completion_index,
int fixit_index,
ffi.Pointer<CXSourceRange> replacement_range,
) {
return _clang_getCompletionFixIt(
results,
completion_index,
fixit_index,
replacement_range,
);
}
late final _clang_getCompletionFixIt_ptr = _lookup<
ffi.NativeFunction<
CXString Function(
ffi.Pointer<CXCodeCompleteResults>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<CXSourceRange>)>>('clang_getCompletionFixIt');
late final _clang_getCompletionFixIt =
_clang_getCompletionFixIt_ptr.asFunction<
CXString Function(ffi.Pointer<CXCodeCompleteResults>, int, int,
ffi.Pointer<CXSourceRange>)>();
/// Returns a default set of code-completion options that can be passed to
/// clang_codeCompleteAt().
int clang_defaultCodeCompleteOptions() {
return _clang_defaultCodeCompleteOptions();
}
late final _clang_defaultCodeCompleteOptions_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function()>>(
'clang_defaultCodeCompleteOptions');
late final _clang_defaultCodeCompleteOptions =
_clang_defaultCodeCompleteOptions_ptr.asFunction<int Function()>();
/// Perform code completion at a given location in a translation unit.
ffi.Pointer<CXCodeCompleteResults> clang_codeCompleteAt(
CXTranslationUnit TU,
ffi.Pointer<ffi.Int8> complete_filename,
int complete_line,
int complete_column,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
int options,
) {
return _clang_codeCompleteAt(
TU,
complete_filename,
complete_line,
complete_column,
unsaved_files,
num_unsaved_files,
options,
);
}
late final _clang_codeCompleteAt_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXCodeCompleteResults> Function(
CXTranslationUnit,
ffi.Pointer<ffi.Int8>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Uint32)>>('clang_codeCompleteAt');
late final _clang_codeCompleteAt = _clang_codeCompleteAt_ptr.asFunction<
ffi.Pointer<CXCodeCompleteResults> Function(
CXTranslationUnit,
ffi.Pointer<ffi.Int8>,
int,
int,
ffi.Pointer<CXUnsavedFile>,
int,
int)>();
/// Sort the code-completion results in case-insensitive alphabetical order.
void clang_sortCodeCompletionResults(
ffi.Pointer<CXCompletionResult> Results,
int NumResults,
) {
return _clang_sortCodeCompletionResults(
Results,
NumResults,
);
}
late final _clang_sortCodeCompletionResults_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(ffi.Pointer<CXCompletionResult>,
ffi.Uint32)>>('clang_sortCodeCompletionResults');
late final _clang_sortCodeCompletionResults =
_clang_sortCodeCompletionResults_ptr
.asFunction<void Function(ffi.Pointer<CXCompletionResult>, int)>();
/// Free the given set of code-completion results.
void clang_disposeCodeCompleteResults(
ffi.Pointer<CXCodeCompleteResults> Results,
) {
return _clang_disposeCodeCompleteResults(
Results,
);
}
late final _clang_disposeCodeCompleteResults_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(ffi.Pointer<CXCodeCompleteResults>)>>(
'clang_disposeCodeCompleteResults');
late final _clang_disposeCodeCompleteResults =
_clang_disposeCodeCompleteResults_ptr
.asFunction<void Function(ffi.Pointer<CXCodeCompleteResults>)>();
/// Determine the number of diagnostics produced prior to the location where
/// code completion was performed.
int clang_codeCompleteGetNumDiagnostics(
ffi.Pointer<CXCodeCompleteResults> Results,
) {
return _clang_codeCompleteGetNumDiagnostics(
Results,
);
}
late final _clang_codeCompleteGetNumDiagnostics_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(ffi.Pointer<CXCodeCompleteResults>)>>(
'clang_codeCompleteGetNumDiagnostics');
late final _clang_codeCompleteGetNumDiagnostics =
_clang_codeCompleteGetNumDiagnostics_ptr
.asFunction<int Function(ffi.Pointer<CXCodeCompleteResults>)>();
/// Retrieve a diagnostic associated with the given code completion.
CXDiagnostic clang_codeCompleteGetDiagnostic(
ffi.Pointer<CXCodeCompleteResults> Results,
int Index,
) {
return _clang_codeCompleteGetDiagnostic(
Results,
Index,
);
}
late final _clang_codeCompleteGetDiagnostic_ptr = _lookup<
ffi.NativeFunction<
CXDiagnostic Function(ffi.Pointer<CXCodeCompleteResults>,
ffi.Uint32)>>('clang_codeCompleteGetDiagnostic');
late final _clang_codeCompleteGetDiagnostic =
_clang_codeCompleteGetDiagnostic_ptr.asFunction<
CXDiagnostic Function(ffi.Pointer<CXCodeCompleteResults>, int)>();
/// Determines what completions are appropriate for the context the given code
/// completion.
int clang_codeCompleteGetContexts(
ffi.Pointer<CXCodeCompleteResults> Results,
) {
return _clang_codeCompleteGetContexts(
Results,
);
}
late final _clang_codeCompleteGetContexts_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint64 Function(ffi.Pointer<CXCodeCompleteResults>)>>(
'clang_codeCompleteGetContexts');
late final _clang_codeCompleteGetContexts = _clang_codeCompleteGetContexts_ptr
.asFunction<int Function(ffi.Pointer<CXCodeCompleteResults>)>();
/// Returns the cursor kind for the container for the current code completion
/// context. The container is only guaranteed to be set for contexts where a
/// container exists (i.e. member accesses or Objective-C message sends); if
/// there is not a container, this function will return CXCursor_InvalidCode.
int clang_codeCompleteGetContainerKind(
ffi.Pointer<CXCodeCompleteResults> Results,
ffi.Pointer<ffi.Uint32> IsIncomplete,
) {
return _clang_codeCompleteGetContainerKind(
Results,
IsIncomplete,
);
}
late final _clang_codeCompleteGetContainerKind_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(ffi.Pointer<CXCodeCompleteResults>,
ffi.Pointer<ffi.Uint32>)>>('clang_codeCompleteGetContainerKind');
late final _clang_codeCompleteGetContainerKind =
_clang_codeCompleteGetContainerKind_ptr.asFunction<
int Function(
ffi.Pointer<CXCodeCompleteResults>, ffi.Pointer<ffi.Uint32>)>();
/// Returns the USR for the container for the current code completion context.
/// If there is not a container for the current context, this function will
/// return the empty string.
CXString clang_codeCompleteGetContainerUSR(
ffi.Pointer<CXCodeCompleteResults> Results,
) {
return _clang_codeCompleteGetContainerUSR(
Results,
);
}
late final _clang_codeCompleteGetContainerUSR_ptr = _lookup<
ffi.NativeFunction<
CXString Function(ffi.Pointer<CXCodeCompleteResults>)>>(
'clang_codeCompleteGetContainerUSR');
late final _clang_codeCompleteGetContainerUSR =
_clang_codeCompleteGetContainerUSR_ptr
.asFunction<CXString Function(ffi.Pointer<CXCodeCompleteResults>)>();
/// Returns the currently-entered selector for an Objective-C message send,
/// formatted like "initWithFoo:bar:". Only guaranteed to return a non-empty
/// string for CXCompletionContext_ObjCInstanceMessage and
/// CXCompletionContext_ObjCClassMessage.
CXString clang_codeCompleteGetObjCSelector(
ffi.Pointer<CXCodeCompleteResults> Results,
) {
return _clang_codeCompleteGetObjCSelector(
Results,
);
}
late final _clang_codeCompleteGetObjCSelector_ptr = _lookup<
ffi.NativeFunction<
CXString Function(ffi.Pointer<CXCodeCompleteResults>)>>(
'clang_codeCompleteGetObjCSelector');
late final _clang_codeCompleteGetObjCSelector =
_clang_codeCompleteGetObjCSelector_ptr
.asFunction<CXString Function(ffi.Pointer<CXCodeCompleteResults>)>();
/// Return a version string, suitable for showing to a user, but not intended
/// to be parsed (the format is not guaranteed to be stable).
CXString clang_getClangVersion() {
return _clang_getClangVersion();
}
late final _clang_getClangVersion_ptr =
_lookup<ffi.NativeFunction<CXString Function()>>('clang_getClangVersion');
late final _clang_getClangVersion =
_clang_getClangVersion_ptr.asFunction<CXString Function()>();
/// Enable/disable crash recovery.
void clang_toggleCrashRecovery(
int isEnabled,
) {
return _clang_toggleCrashRecovery(
isEnabled,
);
}
late final _clang_toggleCrashRecovery_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(ffi.Uint32)>>(
'clang_toggleCrashRecovery');
late final _clang_toggleCrashRecovery =
_clang_toggleCrashRecovery_ptr.asFunction<void Function(int)>();
/// Visit the set of preprocessor inclusions in a translation unit. The
/// visitor function is called with the provided data for every included file.
/// This does not include headers included by the PCH file (unless one is
/// inspecting the inclusions in the PCH file itself).
void clang_getInclusions(
CXTranslationUnit tu,
CXInclusionVisitor visitor,
CXClientData client_data,
) {
return _clang_getInclusions(
tu,
visitor,
client_data,
);
}
late final _clang_getInclusions_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXTranslationUnit, CXInclusionVisitor,
CXClientData)>>('clang_getInclusions');
late final _clang_getInclusions = _clang_getInclusions_ptr.asFunction<
void Function(CXTranslationUnit, CXInclusionVisitor, CXClientData)>();
/// If cursor is a statement declaration tries to evaluate the statement and
/// if its variable, tries to evaluate its initializer, into its corresponding
/// type.
CXEvalResult clang_Cursor_Evaluate(
CXCursor C,
) {
return _clang_Cursor_Evaluate(
C,
);
}
late final _clang_Cursor_Evaluate_ptr =
_lookup<ffi.NativeFunction<CXEvalResult Function(CXCursor)>>(
'clang_Cursor_Evaluate');
late final _clang_Cursor_Evaluate =
_clang_Cursor_Evaluate_ptr.asFunction<CXEvalResult Function(CXCursor)>();
/// Returns the kind of the evaluated result.
int clang_EvalResult_getKind(
CXEvalResult E,
) {
return _clang_EvalResult_getKind(
E,
);
}
late final _clang_EvalResult_getKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXEvalResult)>>(
'clang_EvalResult_getKind');
late final _clang_EvalResult_getKind =
_clang_EvalResult_getKind_ptr.asFunction<int Function(CXEvalResult)>();
/// Returns the evaluation result as integer if the kind is Int.
int clang_EvalResult_getAsInt(
CXEvalResult E,
) {
return _clang_EvalResult_getAsInt(
E,
);
}
late final _clang_EvalResult_getAsInt_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(CXEvalResult)>>(
'clang_EvalResult_getAsInt');
late final _clang_EvalResult_getAsInt =
_clang_EvalResult_getAsInt_ptr.asFunction<int Function(CXEvalResult)>();
/// Returns the evaluation result as a long long integer if the kind is Int.
/// This prevents overflows that may happen if the result is returned with
/// clang_EvalResult_getAsInt.
int clang_EvalResult_getAsLongLong(
CXEvalResult E,
) {
return _clang_EvalResult_getAsLongLong(
E,
);
}
late final _clang_EvalResult_getAsLongLong_ptr =
_lookup<ffi.NativeFunction<ffi.Int64 Function(CXEvalResult)>>(
'clang_EvalResult_getAsLongLong');
late final _clang_EvalResult_getAsLongLong =
_clang_EvalResult_getAsLongLong_ptr
.asFunction<int Function(CXEvalResult)>();
/// Returns a non-zero value if the kind is Int and the evaluation result
/// resulted in an unsigned integer.
int clang_EvalResult_isUnsignedInt(
CXEvalResult E,
) {
return _clang_EvalResult_isUnsignedInt(
E,
);
}
late final _clang_EvalResult_isUnsignedInt_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXEvalResult)>>(
'clang_EvalResult_isUnsignedInt');
late final _clang_EvalResult_isUnsignedInt =
_clang_EvalResult_isUnsignedInt_ptr
.asFunction<int Function(CXEvalResult)>();
/// Returns the evaluation result as an unsigned integer if the kind is Int
/// and clang_EvalResult_isUnsignedInt is non-zero.
int clang_EvalResult_getAsUnsigned(
CXEvalResult E,
) {
return _clang_EvalResult_getAsUnsigned(
E,
);
}
late final _clang_EvalResult_getAsUnsigned_ptr =
_lookup<ffi.NativeFunction<ffi.Uint64 Function(CXEvalResult)>>(
'clang_EvalResult_getAsUnsigned');
late final _clang_EvalResult_getAsUnsigned =
_clang_EvalResult_getAsUnsigned_ptr
.asFunction<int Function(CXEvalResult)>();
/// Returns the evaluation result as double if the kind is double.
double clang_EvalResult_getAsDouble(
CXEvalResult E,
) {
return _clang_EvalResult_getAsDouble(
E,
);
}
late final _clang_EvalResult_getAsDouble_ptr =
_lookup<ffi.NativeFunction<ffi.Double Function(CXEvalResult)>>(
'clang_EvalResult_getAsDouble');
late final _clang_EvalResult_getAsDouble = _clang_EvalResult_getAsDouble_ptr
.asFunction<double Function(CXEvalResult)>();
/// Returns the evaluation result as a constant string if the kind is other
/// than Int or float. User must not free this pointer, instead call
/// clang_EvalResult_dispose on the CXEvalResult returned by
/// clang_Cursor_Evaluate.
ffi.Pointer<ffi.Int8> clang_EvalResult_getAsStr(
CXEvalResult E,
) {
return _clang_EvalResult_getAsStr(
E,
);
}
late final _clang_EvalResult_getAsStr_ptr =
_lookup<ffi.NativeFunction<ffi.Pointer<ffi.Int8> Function(CXEvalResult)>>(
'clang_EvalResult_getAsStr');
late final _clang_EvalResult_getAsStr = _clang_EvalResult_getAsStr_ptr
.asFunction<ffi.Pointer<ffi.Int8> Function(CXEvalResult)>();
/// Disposes the created Eval memory.
void clang_EvalResult_dispose(
CXEvalResult E,
) {
return _clang_EvalResult_dispose(
E,
);
}
late final _clang_EvalResult_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXEvalResult)>>(
'clang_EvalResult_dispose');
late final _clang_EvalResult_dispose =
_clang_EvalResult_dispose_ptr.asFunction<void Function(CXEvalResult)>();
/// Retrieve a remapping.
CXRemapping clang_getRemappings(
ffi.Pointer<ffi.Int8> path,
) {
return _clang_getRemappings(
path,
);
}
late final _clang_getRemappings_ptr =
_lookup<ffi.NativeFunction<CXRemapping Function(ffi.Pointer<ffi.Int8>)>>(
'clang_getRemappings');
late final _clang_getRemappings = _clang_getRemappings_ptr
.asFunction<CXRemapping Function(ffi.Pointer<ffi.Int8>)>();
/// Retrieve a remapping.
CXRemapping clang_getRemappingsFromFileList(
ffi.Pointer<ffi.Pointer<ffi.Int8>> filePaths,
int numFiles,
) {
return _clang_getRemappingsFromFileList(
filePaths,
numFiles,
);
}
late final _clang_getRemappingsFromFileList_ptr = _lookup<
ffi.NativeFunction<
CXRemapping Function(ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Uint32)>>('clang_getRemappingsFromFileList');
late final _clang_getRemappingsFromFileList =
_clang_getRemappingsFromFileList_ptr.asFunction<
CXRemapping Function(ffi.Pointer<ffi.Pointer<ffi.Int8>>, int)>();
/// Determine the number of remappings.
int clang_remap_getNumFiles(
CXRemapping arg0,
) {
return _clang_remap_getNumFiles(
arg0,
);
}
late final _clang_remap_getNumFiles_ptr =
_lookup<ffi.NativeFunction<ffi.Uint32 Function(CXRemapping)>>(
'clang_remap_getNumFiles');
late final _clang_remap_getNumFiles =
_clang_remap_getNumFiles_ptr.asFunction<int Function(CXRemapping)>();
/// Get the original and the associated filename from the remapping.
void clang_remap_getFilenames(
CXRemapping arg0,
int index,
ffi.Pointer<CXString> original,
ffi.Pointer<CXString> transformed,
) {
return _clang_remap_getFilenames(
arg0,
index,
original,
transformed,
);
}
late final _clang_remap_getFilenames_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(CXRemapping, ffi.Uint32, ffi.Pointer<CXString>,
ffi.Pointer<CXString>)>>('clang_remap_getFilenames');
late final _clang_remap_getFilenames =
_clang_remap_getFilenames_ptr.asFunction<
void Function(CXRemapping, int, ffi.Pointer<CXString>,
ffi.Pointer<CXString>)>();
/// Dispose the remapping.
void clang_remap_dispose(
CXRemapping arg0,
) {
return _clang_remap_dispose(
arg0,
);
}
late final _clang_remap_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXRemapping)>>(
'clang_remap_dispose');
late final _clang_remap_dispose =
_clang_remap_dispose_ptr.asFunction<void Function(CXRemapping)>();
/// Find references of a declaration in a specific file.
int clang_findReferencesInFile(
CXCursor cursor,
CXFile file,
CXCursorAndRangeVisitor visitor,
) {
return _clang_findReferencesInFile(
cursor,
file,
visitor,
);
}
late final _clang_findReferencesInFile_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXCursor, CXFile,
CXCursorAndRangeVisitor)>>('clang_findReferencesInFile');
late final _clang_findReferencesInFile = _clang_findReferencesInFile_ptr
.asFunction<int Function(CXCursor, CXFile, CXCursorAndRangeVisitor)>();
/// Find #import/#include directives in a specific file.
int clang_findIncludesInFile(
CXTranslationUnit TU,
CXFile file,
CXCursorAndRangeVisitor visitor,
) {
return _clang_findIncludesInFile(
TU,
file,
visitor,
);
}
late final _clang_findIncludesInFile_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(CXTranslationUnit, CXFile,
CXCursorAndRangeVisitor)>>('clang_findIncludesInFile');
late final _clang_findIncludesInFile =
_clang_findIncludesInFile_ptr.asFunction<
int Function(CXTranslationUnit, CXFile, CXCursorAndRangeVisitor)>();
int clang_index_isEntityObjCContainerKind(
int arg0,
) {
return _clang_index_isEntityObjCContainerKind(
arg0,
);
}
late final _clang_index_isEntityObjCContainerKind_ptr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(ffi.Int32)>>(
'clang_index_isEntityObjCContainerKind');
late final _clang_index_isEntityObjCContainerKind =
_clang_index_isEntityObjCContainerKind_ptr
.asFunction<int Function(int)>();
ffi.Pointer<CXIdxObjCContainerDeclInfo> clang_index_getObjCContainerDeclInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getObjCContainerDeclInfo(
arg0,
);
}
late final _clang_index_getObjCContainerDeclInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxObjCContainerDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>(
'clang_index_getObjCContainerDeclInfo');
late final _clang_index_getObjCContainerDeclInfo =
_clang_index_getObjCContainerDeclInfo_ptr.asFunction<
ffi.Pointer<CXIdxObjCContainerDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
ffi.Pointer<CXIdxObjCInterfaceDeclInfo> clang_index_getObjCInterfaceDeclInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getObjCInterfaceDeclInfo(
arg0,
);
}
late final _clang_index_getObjCInterfaceDeclInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxObjCInterfaceDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>(
'clang_index_getObjCInterfaceDeclInfo');
late final _clang_index_getObjCInterfaceDeclInfo =
_clang_index_getObjCInterfaceDeclInfo_ptr.asFunction<
ffi.Pointer<CXIdxObjCInterfaceDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
ffi.Pointer<CXIdxObjCCategoryDeclInfo> clang_index_getObjCCategoryDeclInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getObjCCategoryDeclInfo(
arg0,
);
}
late final _clang_index_getObjCCategoryDeclInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxObjCCategoryDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>(
'clang_index_getObjCCategoryDeclInfo');
late final _clang_index_getObjCCategoryDeclInfo =
_clang_index_getObjCCategoryDeclInfo_ptr.asFunction<
ffi.Pointer<CXIdxObjCCategoryDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
ffi.Pointer<CXIdxObjCProtocolRefListInfo>
clang_index_getObjCProtocolRefListInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getObjCProtocolRefListInfo(
arg0,
);
}
late final _clang_index_getObjCProtocolRefListInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxObjCProtocolRefListInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>(
'clang_index_getObjCProtocolRefListInfo');
late final _clang_index_getObjCProtocolRefListInfo =
_clang_index_getObjCProtocolRefListInfo_ptr.asFunction<
ffi.Pointer<CXIdxObjCProtocolRefListInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
ffi.Pointer<CXIdxObjCPropertyDeclInfo> clang_index_getObjCPropertyDeclInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getObjCPropertyDeclInfo(
arg0,
);
}
late final _clang_index_getObjCPropertyDeclInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxObjCPropertyDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>(
'clang_index_getObjCPropertyDeclInfo');
late final _clang_index_getObjCPropertyDeclInfo =
_clang_index_getObjCPropertyDeclInfo_ptr.asFunction<
ffi.Pointer<CXIdxObjCPropertyDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
ffi.Pointer<CXIdxIBOutletCollectionAttrInfo>
clang_index_getIBOutletCollectionAttrInfo(
ffi.Pointer<CXIdxAttrInfo> arg0,
) {
return _clang_index_getIBOutletCollectionAttrInfo(
arg0,
);
}
late final _clang_index_getIBOutletCollectionAttrInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxIBOutletCollectionAttrInfo> Function(
ffi.Pointer<CXIdxAttrInfo>)>>(
'clang_index_getIBOutletCollectionAttrInfo');
late final _clang_index_getIBOutletCollectionAttrInfo =
_clang_index_getIBOutletCollectionAttrInfo_ptr.asFunction<
ffi.Pointer<CXIdxIBOutletCollectionAttrInfo> Function(
ffi.Pointer<CXIdxAttrInfo>)>();
ffi.Pointer<CXIdxCXXClassDeclInfo> clang_index_getCXXClassDeclInfo(
ffi.Pointer<CXIdxDeclInfo> arg0,
) {
return _clang_index_getCXXClassDeclInfo(
arg0,
);
}
late final _clang_index_getCXXClassDeclInfo_ptr = _lookup<
ffi.NativeFunction<
ffi.Pointer<CXIdxCXXClassDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>>('clang_index_getCXXClassDeclInfo');
late final _clang_index_getCXXClassDeclInfo =
_clang_index_getCXXClassDeclInfo_ptr.asFunction<
ffi.Pointer<CXIdxCXXClassDeclInfo> Function(
ffi.Pointer<CXIdxDeclInfo>)>();
/// For retrieving a custom CXIdxClientContainer attached to a container.
CXIdxClientContainer clang_index_getClientContainer(
ffi.Pointer<CXIdxContainerInfo> arg0,
) {
return _clang_index_getClientContainer(
arg0,
);
}
late final _clang_index_getClientContainer_ptr = _lookup<
ffi.NativeFunction<
CXIdxClientContainer Function(ffi.Pointer<CXIdxContainerInfo>)>>(
'clang_index_getClientContainer');
late final _clang_index_getClientContainer =
_clang_index_getClientContainer_ptr.asFunction<
CXIdxClientContainer Function(ffi.Pointer<CXIdxContainerInfo>)>();
/// For setting a custom CXIdxClientContainer attached to a container.
void clang_index_setClientContainer(
ffi.Pointer<CXIdxContainerInfo> arg0,
CXIdxClientContainer arg1,
) {
return _clang_index_setClientContainer(
arg0,
arg1,
);
}
late final _clang_index_setClientContainer_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(ffi.Pointer<CXIdxContainerInfo>,
CXIdxClientContainer)>>('clang_index_setClientContainer');
late final _clang_index_setClientContainer =
_clang_index_setClientContainer_ptr.asFunction<
void Function(
ffi.Pointer<CXIdxContainerInfo>, CXIdxClientContainer)>();
/// For retrieving a custom CXIdxClientEntity attached to an entity.
CXIdxClientEntity clang_index_getClientEntity(
ffi.Pointer<CXIdxEntityInfo> arg0,
) {
return _clang_index_getClientEntity(
arg0,
);
}
late final _clang_index_getClientEntity_ptr = _lookup<
ffi.NativeFunction<
CXIdxClientEntity Function(
ffi.Pointer<CXIdxEntityInfo>)>>('clang_index_getClientEntity');
late final _clang_index_getClientEntity = _clang_index_getClientEntity_ptr
.asFunction<CXIdxClientEntity Function(ffi.Pointer<CXIdxEntityInfo>)>();
/// For setting a custom CXIdxClientEntity attached to an entity.
void clang_index_setClientEntity(
ffi.Pointer<CXIdxEntityInfo> arg0,
CXIdxClientEntity arg1,
) {
return _clang_index_setClientEntity(
arg0,
arg1,
);
}
late final _clang_index_setClientEntity_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(ffi.Pointer<CXIdxEntityInfo>,
CXIdxClientEntity)>>('clang_index_setClientEntity');
late final _clang_index_setClientEntity =
_clang_index_setClientEntity_ptr.asFunction<
void Function(ffi.Pointer<CXIdxEntityInfo>, CXIdxClientEntity)>();
/// An indexing action/session, to be applied to one or multiple translation
/// units.
CXIndexAction clang_IndexAction_create(
CXIndex CIdx,
) {
return _clang_IndexAction_create(
CIdx,
);
}
late final _clang_IndexAction_create_ptr =
_lookup<ffi.NativeFunction<CXIndexAction Function(CXIndex)>>(
'clang_IndexAction_create');
late final _clang_IndexAction_create = _clang_IndexAction_create_ptr
.asFunction<CXIndexAction Function(CXIndex)>();
/// Destroy the given index action.
void clang_IndexAction_dispose(
CXIndexAction arg0,
) {
return _clang_IndexAction_dispose(
arg0,
);
}
late final _clang_IndexAction_dispose_ptr =
_lookup<ffi.NativeFunction<ffi.Void Function(CXIndexAction)>>(
'clang_IndexAction_dispose');
late final _clang_IndexAction_dispose =
_clang_IndexAction_dispose_ptr.asFunction<void Function(CXIndexAction)>();
/// Index the given source file and the translation unit corresponding to that
/// file via callbacks implemented through #IndexerCallbacks.
int clang_indexSourceFile(
CXIndexAction arg0,
CXClientData client_data,
ffi.Pointer<IndexerCallbacks> index_callbacks,
int index_callbacks_size,
int index_options,
ffi.Pointer<ffi.Int8> source_filename,
ffi.Pointer<ffi.Pointer<ffi.Int8>> command_line_args,
int num_command_line_args,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
ffi.Pointer<CXTranslationUnit> out_TU,
int TU_options,
) {
return _clang_indexSourceFile(
arg0,
client_data,
index_callbacks,
index_callbacks_size,
index_options,
source_filename,
command_line_args,
num_command_line_args,
unsaved_files,
num_unsaved_files,
out_TU,
TU_options,
);
}
late final _clang_indexSourceFile_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXIndexAction,
CXClientData,
ffi.Pointer<IndexerCallbacks>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Int32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Pointer<CXTranslationUnit>,
ffi.Uint32)>>('clang_indexSourceFile');
late final _clang_indexSourceFile = _clang_indexSourceFile_ptr.asFunction<
int Function(
CXIndexAction,
CXClientData,
ffi.Pointer<IndexerCallbacks>,
int,
int,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>,
int,
ffi.Pointer<CXTranslationUnit>,
int)>();
/// Same as clang_indexSourceFile but requires a full command line for
/// command_line_args including argv[0]. This is useful if the standard
/// library paths are relative to the binary.
int clang_indexSourceFileFullArgv(
CXIndexAction arg0,
CXClientData client_data,
ffi.Pointer<IndexerCallbacks> index_callbacks,
int index_callbacks_size,
int index_options,
ffi.Pointer<ffi.Int8> source_filename,
ffi.Pointer<ffi.Pointer<ffi.Int8>> command_line_args,
int num_command_line_args,
ffi.Pointer<CXUnsavedFile> unsaved_files,
int num_unsaved_files,
ffi.Pointer<CXTranslationUnit> out_TU,
int TU_options,
) {
return _clang_indexSourceFileFullArgv(
arg0,
client_data,
index_callbacks,
index_callbacks_size,
index_options,
source_filename,
command_line_args,
num_command_line_args,
unsaved_files,
num_unsaved_files,
out_TU,
TU_options,
);
}
late final _clang_indexSourceFileFullArgv_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXIndexAction,
CXClientData,
ffi.Pointer<IndexerCallbacks>,
ffi.Uint32,
ffi.Uint32,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
ffi.Int32,
ffi.Pointer<CXUnsavedFile>,
ffi.Uint32,
ffi.Pointer<CXTranslationUnit>,
ffi.Uint32)>>('clang_indexSourceFileFullArgv');
late final _clang_indexSourceFileFullArgv =
_clang_indexSourceFileFullArgv_ptr.asFunction<
int Function(
CXIndexAction,
CXClientData,
ffi.Pointer<IndexerCallbacks>,
int,
int,
ffi.Pointer<ffi.Int8>,
ffi.Pointer<ffi.Pointer<ffi.Int8>>,
int,
ffi.Pointer<CXUnsavedFile>,
int,
ffi.Pointer<CXTranslationUnit>,
int)>();
/// Index the given translation unit via callbacks implemented through
/// #IndexerCallbacks.
int clang_indexTranslationUnit(
CXIndexAction arg0,
CXClientData client_data,
ffi.Pointer<IndexerCallbacks> index_callbacks,
int index_callbacks_size,
int index_options,
CXTranslationUnit arg5,
) {
return _clang_indexTranslationUnit(
arg0,
client_data,
index_callbacks,
index_callbacks_size,
index_options,
arg5,
);
}
late final _clang_indexTranslationUnit_ptr = _lookup<
ffi.NativeFunction<
ffi.Int32 Function(
CXIndexAction,
CXClientData,
ffi.Pointer<IndexerCallbacks>,
ffi.Uint32,
ffi.Uint32,
CXTranslationUnit)>>('clang_indexTranslationUnit');
late final _clang_indexTranslationUnit =
_clang_indexTranslationUnit_ptr.asFunction<
int Function(CXIndexAction, CXClientData,
ffi.Pointer<IndexerCallbacks>, int, int, CXTranslationUnit)>();
/// Retrieve the CXIdxFile, file, line, column, and offset represented by the
/// given CXIdxLoc.
void clang_indexLoc_getFileLocation(
CXIdxLoc loc,
ffi.Pointer<CXIdxClientFile> indexFile,
ffi.Pointer<CXFile> file,
ffi.Pointer<ffi.Uint32> line,
ffi.Pointer<ffi.Uint32> column,
ffi.Pointer<ffi.Uint32> offset,
) {
return _clang_indexLoc_getFileLocation(
loc,
indexFile,
file,
line,
column,
offset,
);
}
late final _clang_indexLoc_getFileLocation_ptr = _lookup<
ffi.NativeFunction<
ffi.Void Function(
CXIdxLoc,
ffi.Pointer<CXIdxClientFile>,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>>('clang_indexLoc_getFileLocation');
late final _clang_indexLoc_getFileLocation =
_clang_indexLoc_getFileLocation_ptr.asFunction<
void Function(
CXIdxLoc,
ffi.Pointer<CXIdxClientFile>,
ffi.Pointer<CXFile>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>,
ffi.Pointer<ffi.Uint32>)>();
/// Retrieve the CXSourceLocation represented by the given CXIdxLoc.
CXSourceLocation clang_indexLoc_getCXSourceLocation(
CXIdxLoc loc,
) {
return _clang_indexLoc_getCXSourceLocation(
loc,
);
}
late final _clang_indexLoc_getCXSourceLocation_ptr =
_lookup<ffi.NativeFunction<CXSourceLocation Function(CXIdxLoc)>>(
'clang_indexLoc_getCXSourceLocation');
late final _clang_indexLoc_getCXSourceLocation =
_clang_indexLoc_getCXSourceLocation_ptr
.asFunction<CXSourceLocation Function(CXIdxLoc)>();
/// Visit the fields of a particular type.
int clang_Type_visitFields(
CXType T,
CXFieldVisitor visitor,
CXClientData client_data,
) {
return _clang_Type_visitFields(
T,
visitor,
client_data,
);
}
late final _clang_Type_visitFields_ptr = _lookup<
ffi.NativeFunction<
ffi.Uint32 Function(
CXType, CXFieldVisitor, CXClientData)>>('clang_Type_visitFields');
late final _clang_Type_visitFields = _clang_Type_visitFields_ptr
.asFunction<int Function(CXType, CXFieldVisitor, CXClientData)>();
}
/// Error codes returned by libclang routines.
abstract class CXErrorCode {
/// No error.
static const int CXError_Success = 0;
/// A generic error code, no further details are available.
static const int CXError_Failure = 1;
/// libclang crashed while performing the requested operation.
static const int CXError_Crashed = 2;
/// The function detected that the arguments violate the function contract.
static const int CXError_InvalidArguments = 3;
/// An AST deserialization error has occurred.
static const int CXError_ASTReadError = 4;
}
/// A character string.
class CXString extends ffi.Struct {
external ffi.Pointer<ffi.Void> data;
@ffi.Uint32()
external int private_flags;
}
class CXStringSet extends ffi.Struct {
external ffi.Pointer<CXString> Strings;
@ffi.Uint32()
external int Count;
}
class CXVirtualFileOverlayImpl extends ffi.Opaque {}
/// Object encapsulating information about overlaying virtual file/directories
/// over the real file system.
typedef CXVirtualFileOverlay = ffi.Pointer<CXVirtualFileOverlayImpl>;
class CXModuleMapDescriptorImpl extends ffi.Opaque {}
/// Object encapsulating information about a module.map file.
typedef CXModuleMapDescriptor = ffi.Pointer<CXModuleMapDescriptorImpl>;
class CXTargetInfoImpl extends ffi.Opaque {}
class CXTranslationUnitImpl extends ffi.Opaque {}
/// Provides the contents of a file that has not yet been saved to disk.
class CXUnsavedFile extends ffi.Struct {
/// The file whose contents have not yet been saved.
external ffi.Pointer<ffi.Int8> Filename;
/// A buffer containing the unsaved contents of this file.
external ffi.Pointer<ffi.Int8> Contents;
/// The length of the unsaved contents of this buffer.
@ffi.Uint64()
external int Length;
}
/// Describes the availability of a particular entity, which indicates whether
/// the use of this entity will result in a warning or error due to it being
/// deprecated or unavailable.
abstract class CXAvailabilityKind {
/// The entity is available.
static const int CXAvailability_Available = 0;
/// The entity is available, but has been deprecated (and its use is not
/// recommended).
static const int CXAvailability_Deprecated = 1;
/// The entity is not available; any use of it will be an error.
static const int CXAvailability_NotAvailable = 2;
/// The entity is available, but not accessible; any use of it will be an
/// error.
static const int CXAvailability_NotAccessible = 3;
}
/// Describes a version number of the form major.minor.subminor.
class CXVersion extends ffi.Struct {
/// The major version number, e.g., the '10' in '10.7.3'. A negative value
/// indicates that there is no version number at all.
@ffi.Int32()
external int Major;
/// The minor version number, e.g., the '7' in '10.7.3'. This value will be
/// negative if no minor version number was provided, e.g., for version '10'.
@ffi.Int32()
external int Minor;
/// The subminor version number, e.g., the '3' in '10.7.3'. This value will be
/// negative if no minor or subminor version number was provided, e.g., in
/// version '10' or '10.7'.
@ffi.Int32()
external int Subminor;
}
/// Describes the exception specification of a cursor.
abstract class CXCursor_ExceptionSpecificationKind {
/// The cursor has no exception specification.
static const int CXCursor_ExceptionSpecificationKind_None = 0;
/// The cursor has exception specification throw()
static const int CXCursor_ExceptionSpecificationKind_DynamicNone = 1;
/// The cursor has exception specification throw(T1, T2)
static const int CXCursor_ExceptionSpecificationKind_Dynamic = 2;
/// The cursor has exception specification throw(...).
static const int CXCursor_ExceptionSpecificationKind_MSAny = 3;
/// The cursor has exception specification basic noexcept.
static const int CXCursor_ExceptionSpecificationKind_BasicNoexcept = 4;
/// The cursor has exception specification computed noexcept.
static const int CXCursor_ExceptionSpecificationKind_ComputedNoexcept = 5;
/// The exception specification has not yet been evaluated.
static const int CXCursor_ExceptionSpecificationKind_Unevaluated = 6;
/// The exception specification has not yet been instantiated.
static const int CXCursor_ExceptionSpecificationKind_Uninstantiated = 7;
/// The exception specification has not been parsed yet.
static const int CXCursor_ExceptionSpecificationKind_Unparsed = 8;
/// The cursor has a __declspec(nothrow) exception specification.
static const int CXCursor_ExceptionSpecificationKind_NoThrow = 9;
}
/// An "index" that consists of a set of translation units that would typically
/// be linked together into an executable or library.
typedef CXIndex = ffi.Pointer<ffi.Void>;
abstract class CXGlobalOptFlags {
/// Used to indicate that no special CXIndex options are needed.
static const int CXGlobalOpt_None = 0;
/// Used to indicate that threads that libclang creates for indexing purposes
/// should use background priority.
static const int CXGlobalOpt_ThreadBackgroundPriorityForIndexing = 1;
/// Used to indicate that threads that libclang creates for editing purposes
/// should use background priority.
static const int CXGlobalOpt_ThreadBackgroundPriorityForEditing = 2;
/// Used to indicate that all threads that libclang creates should use
/// background priority.
static const int CXGlobalOpt_ThreadBackgroundPriorityForAll = 3;
}
/// A particular source file that is part of a translation unit.
typedef CXFile = ffi.Pointer<ffi.Void>;
/// Uniquely identifies a CXFile, that refers to the same underlying file,
/// across an indexing session.
class CXFileUniqueID extends ffi.Struct {
@ffi.Array.multi([3])
external ffi.Array<ffi.Uint64> data;
}
/// A single translation unit, which resides in an index.
typedef CXTranslationUnit = ffi.Pointer<CXTranslationUnitImpl>;
/// Identifies a specific source location within a translation unit.
class CXSourceLocation extends ffi.Struct {
@ffi.Array.multi([2])
external ffi.Array<ffi.Pointer<ffi.Void>> ptr_data;
@ffi.Uint32()
external int int_data;
}
/// Identifies a half-open character range in the source code.
class CXSourceRange extends ffi.Struct {
@ffi.Array.multi([2])
external ffi.Array<ffi.Pointer<ffi.Void>> ptr_data;
@ffi.Uint32()
external int begin_int_data;
@ffi.Uint32()
external int end_int_data;
}
/// Identifies an array of ranges.
class CXSourceRangeList extends ffi.Struct {
/// The number of ranges in the ranges array.
@ffi.Uint32()
external int count;
/// An array of CXSourceRanges.
external ffi.Pointer<CXSourceRange> ranges;
}
/// Describes the severity of a particular diagnostic.
abstract class CXDiagnosticSeverity {
/// A diagnostic that has been suppressed, e.g., by a command-line option.
static const int CXDiagnostic_Ignored = 0;
/// This diagnostic is a note that should be attached to the previous
/// (non-note) diagnostic.
static const int CXDiagnostic_Note = 1;
/// This diagnostic indicates suspicious code that may not be wrong.
static const int CXDiagnostic_Warning = 2;
/// This diagnostic indicates that the code is ill-formed.
static const int CXDiagnostic_Error = 3;
/// This diagnostic indicates that the code is ill-formed such that future
/// parser recovery is unlikely to produce useful results.
static const int CXDiagnostic_Fatal = 4;
}
/// A group of CXDiagnostics.
typedef CXDiagnosticSet = ffi.Pointer<ffi.Void>;
/// A single diagnostic, containing the diagnostic's severity, location, text,
/// source ranges, and fix-it hints.
typedef CXDiagnostic = ffi.Pointer<ffi.Void>;
/// Describes the kind of error that occurred (if any) in a call to
/// clang_loadDiagnostics.
abstract class CXLoadDiag_Error {
/// Indicates that no error occurred.
static const int CXLoadDiag_None = 0;
/// Indicates that an unknown error occurred while attempting to deserialize
/// diagnostics.
static const int CXLoadDiag_Unknown = 1;
/// Indicates that the file containing the serialized diagnostics could not be
/// opened.
static const int CXLoadDiag_CannotLoad = 2;
/// Indicates that the serialized diagnostics file is invalid or corrupt.
static const int CXLoadDiag_InvalidFile = 3;
}
/// Options to control the display of diagnostics.
abstract class CXDiagnosticDisplayOptions {
/// Display the source-location information where the diagnostic was located.
static const int CXDiagnostic_DisplaySourceLocation = 1;
/// If displaying the source-location information of the diagnostic, also
/// include the column number.
static const int CXDiagnostic_DisplayColumn = 2;
/// If displaying the source-location information of the diagnostic, also
/// include information about source ranges in a machine-parsable format.
static const int CXDiagnostic_DisplaySourceRanges = 4;
/// Display the option name associated with this diagnostic, if any.
static const int CXDiagnostic_DisplayOption = 8;
/// Display the category number associated with this diagnostic, if any.
static const int CXDiagnostic_DisplayCategoryId = 16;
/// Display the category name associated with this diagnostic, if any.
static const int CXDiagnostic_DisplayCategoryName = 32;
}
/// Flags that control the creation of translation units.
abstract class CXTranslationUnit_Flags {
/// Used to indicate that no special translation-unit options are needed.
static const int CXTranslationUnit_None = 0;
/// Used to indicate that the parser should construct a "detailed"
/// preprocessing record, including all macro definitions and instantiations.
static const int CXTranslationUnit_DetailedPreprocessingRecord = 1;
/// Used to indicate that the translation unit is incomplete.
static const int CXTranslationUnit_Incomplete = 2;
/// Used to indicate that the translation unit should be built with an
/// implicit precompiled header for the preamble.
static const int CXTranslationUnit_PrecompiledPreamble = 4;
/// Used to indicate that the translation unit should cache some
/// code-completion results with each reparse of the source file.
static const int CXTranslationUnit_CacheCompletionResults = 8;
/// Used to indicate that the translation unit will be serialized with
/// clang_saveTranslationUnit.
static const int CXTranslationUnit_ForSerialization = 16;
/// DEPRECATED: Enabled chained precompiled preambles in C++.
static const int CXTranslationUnit_CXXChainedPCH = 32;
/// Used to indicate that function/method bodies should be skipped while
/// parsing.
static const int CXTranslationUnit_SkipFunctionBodies = 64;
/// Used to indicate that brief documentation comments should be included into
/// the set of code completions returned from this translation unit.
static const int CXTranslationUnit_IncludeBriefCommentsInCodeCompletion = 128;
/// Used to indicate that the precompiled preamble should be created on the
/// first parse. Otherwise it will be created on the first reparse. This
/// trades runtime on the first parse (serializing the preamble takes time)
/// for reduced runtime on the second parse (can now reuse the preamble).
static const int CXTranslationUnit_CreatePreambleOnFirstParse = 256;
/// Do not stop processing when fatal errors are encountered.
static const int CXTranslationUnit_KeepGoing = 512;
/// Sets the preprocessor in a mode for parsing a single file only.
static const int CXTranslationUnit_SingleFileParse = 1024;
/// Used in combination with CXTranslationUnit_SkipFunctionBodies to constrain
/// the skipping of function bodies to the preamble.
static const int CXTranslationUnit_LimitSkipFunctionBodiesToPreamble = 2048;
/// Used to indicate that attributed types should be included in CXType.
static const int CXTranslationUnit_IncludeAttributedTypes = 4096;
/// Used to indicate that implicit attributes should be visited.
static const int CXTranslationUnit_VisitImplicitAttributes = 8192;
/// Used to indicate that non-errors from included files should be ignored.
static const int CXTranslationUnit_IgnoreNonErrorsFromIncludedFiles = 16384;
/// Tells the preprocessor not to skip excluded conditional blocks.
static const int CXTranslationUnit_RetainExcludedConditionalBlocks = 32768;
}
/// Flags that control how translation units are saved.
abstract class CXSaveTranslationUnit_Flags {
/// Used to indicate that no special saving options are needed.
static const int CXSaveTranslationUnit_None = 0;
}
/// Describes the kind of error that occurred (if any) in a call to
/// clang_saveTranslationUnit().
abstract class CXSaveError {
/// Indicates that no error occurred while saving a translation unit.
static const int CXSaveError_None = 0;
/// Indicates that an unknown error occurred while attempting to save the
/// file.
static const int CXSaveError_Unknown = 1;
/// Indicates that errors during translation prevented this attempt to save
/// the translation unit.
static const int CXSaveError_TranslationErrors = 2;
/// Indicates that the translation unit to be saved was somehow invalid (e.g.,
/// NULL).
static const int CXSaveError_InvalidTU = 3;
}
/// Flags that control the reparsing of translation units.
abstract class CXReparse_Flags {
/// Used to indicate that no special reparsing options are needed.
static const int CXReparse_None = 0;
}
/// Categorizes how memory is being used by a translation unit.
abstract class CXTUResourceUsageKind {
static const int CXTUResourceUsage_AST = 1;
static const int CXTUResourceUsage_Identifiers = 2;
static const int CXTUResourceUsage_Selectors = 3;
static const int CXTUResourceUsage_GlobalCompletionResults = 4;
static const int CXTUResourceUsage_SourceManagerContentCache = 5;
static const int CXTUResourceUsage_AST_SideTables = 6;
static const int CXTUResourceUsage_SourceManager_Membuffer_Malloc = 7;
static const int CXTUResourceUsage_SourceManager_Membuffer_MMap = 8;
static const int CXTUResourceUsage_ExternalASTSource_Membuffer_Malloc = 9;
static const int CXTUResourceUsage_ExternalASTSource_Membuffer_MMap = 10;
static const int CXTUResourceUsage_Preprocessor = 11;
static const int CXTUResourceUsage_PreprocessingRecord = 12;
static const int CXTUResourceUsage_SourceManager_DataStructures = 13;
static const int CXTUResourceUsage_Preprocessor_HeaderSearch = 14;
static const int CXTUResourceUsage_MEMORY_IN_BYTES_BEGIN = 1;
static const int CXTUResourceUsage_MEMORY_IN_BYTES_END = 14;
static const int CXTUResourceUsage_First = 1;
static const int CXTUResourceUsage_Last = 14;
}
class CXTUResourceUsageEntry extends ffi.Struct {
@ffi.Int32()
external int kind;
@ffi.Uint64()
external int amount;
}
/// The memory usage of a CXTranslationUnit, broken into categories.
class CXTUResourceUsage extends ffi.Struct {
external ffi.Pointer<ffi.Void> data;
@ffi.Uint32()
external int numEntries;
external ffi.Pointer<CXTUResourceUsageEntry> entries;
}
/// An opaque type representing target information for a given translation unit.
typedef CXTargetInfo = ffi.Pointer<CXTargetInfoImpl>;
/// Describes the kind of entity that a cursor refers to.
abstract class CXCursorKind {
/// A declaration whose specific kind is not exposed via this interface.
static const int CXCursor_UnexposedDecl = 1;
/// A C or C++ struct.
static const int CXCursor_StructDecl = 2;
/// A C or C++ union.
static const int CXCursor_UnionDecl = 3;
/// A C++ class.
static const int CXCursor_ClassDecl = 4;
/// An enumeration.
static const int CXCursor_EnumDecl = 5;
/// A field (in C) or non-static data member (in C++) in a struct, union, or
/// C++ class.
static const int CXCursor_FieldDecl = 6;
/// An enumerator constant.
static const int CXCursor_EnumConstantDecl = 7;
/// A function.
static const int CXCursor_FunctionDecl = 8;
/// A variable.
static const int CXCursor_VarDecl = 9;
/// A function or method parameter.
static const int CXCursor_ParmDecl = 10;
/// An Objective-C @interface.
static const int CXCursor_ObjCInterfaceDecl = 11;
/// An Objective-C @interface for a category.
static const int CXCursor_ObjCCategoryDecl = 12;
/// An Objective-C @protocol declaration.
static const int CXCursor_ObjCProtocolDecl = 13;
/// An Objective-C @property declaration.
static const int CXCursor_ObjCPropertyDecl = 14;
/// An Objective-C instance variable.
static const int CXCursor_ObjCIvarDecl = 15;
/// An Objective-C instance method.
static const int CXCursor_ObjCInstanceMethodDecl = 16;
/// An Objective-C class method.
static const int CXCursor_ObjCClassMethodDecl = 17;
/// An Objective-C @implementation.
static const int CXCursor_ObjCImplementationDecl = 18;
/// An Objective-C @implementation for a category.
static const int CXCursor_ObjCCategoryImplDecl = 19;
/// A typedef.
static const int CXCursor_TypedefDecl = 20;
/// A C++ class method.
static const int CXCursor_CXXMethod = 21;
/// A C++ namespace.
static const int CXCursor_Namespace = 22;
/// A linkage specification, e.g. 'extern "C"'.
static const int CXCursor_LinkageSpec = 23;
/// A C++ constructor.
static const int CXCursor_Constructor = 24;
/// A C++ destructor.
static const int CXCursor_Destructor = 25;
/// A C++ conversion function.
static const int CXCursor_ConversionFunction = 26;
/// A C++ template type parameter.
static const int CXCursor_TemplateTypeParameter = 27;
/// A C++ non-type template parameter.
static const int CXCursor_NonTypeTemplateParameter = 28;
/// A C++ template template parameter.
static const int CXCursor_TemplateTemplateParameter = 29;
/// A C++ function template.
static const int CXCursor_FunctionTemplate = 30;
/// A C++ class template.
static const int CXCursor_ClassTemplate = 31;
/// A C++ class template partial specialization.
static const int CXCursor_ClassTemplatePartialSpecialization = 32;
/// A C++ namespace alias declaration.
static const int CXCursor_NamespaceAlias = 33;
/// A C++ using directive.
static const int CXCursor_UsingDirective = 34;
/// A C++ using declaration.
static const int CXCursor_UsingDeclaration = 35;
/// A C++ alias declaration
static const int CXCursor_TypeAliasDecl = 36;
/// An Objective-C @synthesize definition.
static const int CXCursor_ObjCSynthesizeDecl = 37;
/// An Objective-C @dynamic definition.
static const int CXCursor_ObjCDynamicDecl = 38;
/// An access specifier.
static const int CXCursor_CXXAccessSpecifier = 39;
static const int CXCursor_FirstDecl = 1;
static const int CXCursor_LastDecl = 39;
static const int CXCursor_FirstRef = 40;
static const int CXCursor_ObjCSuperClassRef = 40;
static const int CXCursor_ObjCProtocolRef = 41;
static const int CXCursor_ObjCClassRef = 42;
/// A reference to a type declaration.
static const int CXCursor_TypeRef = 43;
static const int CXCursor_CXXBaseSpecifier = 44;
/// A reference to a class template, function template, template template
/// parameter, or class template partial specialization.
static const int CXCursor_TemplateRef = 45;
/// A reference to a namespace or namespace alias.
static const int CXCursor_NamespaceRef = 46;
/// A reference to a member of a struct, union, or class that occurs in some
/// non-expression context, e.g., a designated initializer.
static const int CXCursor_MemberRef = 47;
/// A reference to a labeled statement.
static const int CXCursor_LabelRef = 48;
/// A reference to a set of overloaded functions or function templates that
/// has not yet been resolved to a specific function or function template.
static const int CXCursor_OverloadedDeclRef = 49;
/// A reference to a variable that occurs in some non-expression context,
/// e.g., a C++ lambda capture list.
static const int CXCursor_VariableRef = 50;
static const int CXCursor_LastRef = 50;
static const int CXCursor_FirstInvalid = 70;
static const int CXCursor_InvalidFile = 70;
static const int CXCursor_NoDeclFound = 71;
static const int CXCursor_NotImplemented = 72;
static const int CXCursor_InvalidCode = 73;
static const int CXCursor_LastInvalid = 73;
static const int CXCursor_FirstExpr = 100;
/// An expression whose specific kind is not exposed via this interface.
static const int CXCursor_UnexposedExpr = 100;
/// An expression that refers to some value declaration, such as a function,
/// variable, or enumerator.
static const int CXCursor_DeclRefExpr = 101;
/// An expression that refers to a member of a struct, union, class,
/// Objective-C class, etc.
static const int CXCursor_MemberRefExpr = 102;
/// An expression that calls a function.
static const int CXCursor_CallExpr = 103;
/// An expression that sends a message to an Objective-C object or class.
static const int CXCursor_ObjCMessageExpr = 104;
/// An expression that represents a block literal.
static const int CXCursor_BlockExpr = 105;
/// An integer literal.
static const int CXCursor_IntegerLiteral = 106;
/// A floating point number literal.
static const int CXCursor_FloatingLiteral = 107;
/// An imaginary number literal.
static const int CXCursor_ImaginaryLiteral = 108;
/// A string literal.
static const int CXCursor_StringLiteral = 109;
/// A character literal.
static const int CXCursor_CharacterLiteral = 110;
/// A parenthesized expression, e.g. "(1)".
static const int CXCursor_ParenExpr = 111;
/// This represents the unary-expression's (except sizeof and alignof).
static const int CXCursor_UnaryOperator = 112;
/// [C99 6.5.2.1] Array Subscripting.
static const int CXCursor_ArraySubscriptExpr = 113;
/// A builtin binary operation expression such as "x + y" or "x <= y".
static const int CXCursor_BinaryOperator = 114;
/// Compound assignment such as "+=".
static const int CXCursor_CompoundAssignOperator = 115;
/// The ?: ternary operator.
static const int CXCursor_ConditionalOperator = 116;
/// An explicit cast in C (C99 6.5.4) or a C-style cast in C++ (C++
/// [expr.cast]), which uses the syntax (Type)expr.
static const int CXCursor_CStyleCastExpr = 117;
/// [C99 6.5.2.5]
static const int CXCursor_CompoundLiteralExpr = 118;
/// Describes an C or C++ initializer list.
static const int CXCursor_InitListExpr = 119;
/// The GNU address of label extension, representing &&label.
static const int CXCursor_AddrLabelExpr = 120;
/// This is the GNU Statement Expression extension: ({int X=4; X;})
static const int CXCursor_StmtExpr = 121;
/// Represents a C11 generic selection.
static const int CXCursor_GenericSelectionExpr = 122;
/// Implements the GNU __null extension, which is a name for a null pointer
/// constant that has integral type (e.g., int or long) and is the same size
/// and alignment as a pointer.
static const int CXCursor_GNUNullExpr = 123;
/// C++'s static_cast<> expression.
static const int CXCursor_CXXStaticCastExpr = 124;
/// C++'s dynamic_cast<> expression.
static const int CXCursor_CXXDynamicCastExpr = 125;
/// C++'s reinterpret_cast<> expression.
static const int CXCursor_CXXReinterpretCastExpr = 126;
/// C++'s const_cast<> expression.
static const int CXCursor_CXXConstCastExpr = 127;
/// Represents an explicit C++ type conversion that uses "functional" notion
/// (C++ [expr.type.conv]).
static const int CXCursor_CXXFunctionalCastExpr = 128;
/// A C++ typeid expression (C++ [expr.typeid]).
static const int CXCursor_CXXTypeidExpr = 129;
/// [C++ 2.13.5] C++ Boolean Literal.
static const int CXCursor_CXXBoolLiteralExpr = 130;
/// [C++0x 2.14.7] C++ Pointer Literal.
static const int CXCursor_CXXNullPtrLiteralExpr = 131;
/// Represents the "this" expression in C++
static const int CXCursor_CXXThisExpr = 132;
/// [C++ 15] C++ Throw Expression.
static const int CXCursor_CXXThrowExpr = 133;
/// A new expression for memory allocation and constructor calls, e.g: "new
/// CXXNewExpr(foo)".
static const int CXCursor_CXXNewExpr = 134;
/// A delete expression for memory deallocation and destructor calls, e.g.
/// "delete[] pArray".
static const int CXCursor_CXXDeleteExpr = 135;
/// A unary expression. (noexcept, sizeof, or other traits)
static const int CXCursor_UnaryExpr = 136;
/// An Objective-C string literal i.e. "foo".
static const int CXCursor_ObjCStringLiteral = 137;
/// An Objective-C @encode expression.
static const int CXCursor_ObjCEncodeExpr = 138;
/// An Objective-C @selector expression.
static const int CXCursor_ObjCSelectorExpr = 139;
/// An Objective-C @protocol expression.
static const int CXCursor_ObjCProtocolExpr = 140;
/// An Objective-C "bridged" cast expression, which casts between Objective-C
/// pointers and C pointers, transferring ownership in the process.
static const int CXCursor_ObjCBridgedCastExpr = 141;
/// Represents a C++0x pack expansion that produces a sequence of expressions.
static const int CXCursor_PackExpansionExpr = 142;
/// Represents an expression that computes the length of a parameter pack.
static const int CXCursor_SizeOfPackExpr = 143;
static const int CXCursor_LambdaExpr = 144;
/// Objective-c Boolean Literal.
static const int CXCursor_ObjCBoolLiteralExpr = 145;
/// Represents the "self" expression in an Objective-C method.
static const int CXCursor_ObjCSelfExpr = 146;
/// OpenMP 4.0 [2.4, Array Section].
static const int CXCursor_OMPArraySectionExpr = 147;
/// Represents an (...) check.
static const int CXCursor_ObjCAvailabilityCheckExpr = 148;
/// Fixed point literal
static const int CXCursor_FixedPointLiteral = 149;
static const int CXCursor_LastExpr = 149;
static const int CXCursor_FirstStmt = 200;
/// A statement whose specific kind is not exposed via this interface.
static const int CXCursor_UnexposedStmt = 200;
/// A labelled statement in a function.
static const int CXCursor_LabelStmt = 201;
/// A group of statements like { stmt stmt }.
static const int CXCursor_CompoundStmt = 202;
/// A case statement.
static const int CXCursor_CaseStmt = 203;
/// A default statement.
static const int CXCursor_DefaultStmt = 204;
/// An if statement
static const int CXCursor_IfStmt = 205;
/// A switch statement.
static const int CXCursor_SwitchStmt = 206;
/// A while statement.
static const int CXCursor_WhileStmt = 207;
/// A do statement.
static const int CXCursor_DoStmt = 208;
/// A for statement.
static const int CXCursor_ForStmt = 209;
/// A goto statement.
static const int CXCursor_GotoStmt = 210;
/// An indirect goto statement.
static const int CXCursor_IndirectGotoStmt = 211;
/// A continue statement.
static const int CXCursor_ContinueStmt = 212;
/// A break statement.
static const int CXCursor_BreakStmt = 213;
/// A return statement.
static const int CXCursor_ReturnStmt = 214;
/// A GCC inline assembly statement extension.
static const int CXCursor_GCCAsmStmt = 215;
static const int CXCursor_AsmStmt = 215;
/// Objective-C's overall @try-@catch-@finally statement.
static const int CXCursor_ObjCAtTryStmt = 216;
/// Objective-C's @catch statement.
static const int CXCursor_ObjCAtCatchStmt = 217;
/// Objective-C's @finally statement.
static const int CXCursor_ObjCAtFinallyStmt = 218;
/// Objective-C's @throw statement.
static const int CXCursor_ObjCAtThrowStmt = 219;
/// Objective-C's @synchronized statement.
static const int CXCursor_ObjCAtSynchronizedStmt = 220;
/// Objective-C's autorelease pool statement.
static const int CXCursor_ObjCAutoreleasePoolStmt = 221;
/// Objective-C's collection statement.
static const int CXCursor_ObjCForCollectionStmt = 222;
/// C++'s catch statement.
static const int CXCursor_CXXCatchStmt = 223;
/// C++'s try statement.
static const int CXCursor_CXXTryStmt = 224;
/// C++'s for (* : *) statement.
static const int CXCursor_CXXForRangeStmt = 225;
/// Windows Structured Exception Handling's try statement.
static const int CXCursor_SEHTryStmt = 226;
/// Windows Structured Exception Handling's except statement.
static const int CXCursor_SEHExceptStmt = 227;
/// Windows Structured Exception Handling's finally statement.
static const int CXCursor_SEHFinallyStmt = 228;
/// A MS inline assembly statement extension.
static const int CXCursor_MSAsmStmt = 229;
/// The null statement ";": C99 6.8.3p3.
static const int CXCursor_NullStmt = 230;
/// Adaptor class for mixing declarations with statements and expressions.
static const int CXCursor_DeclStmt = 231;
/// OpenMP parallel directive.
static const int CXCursor_OMPParallelDirective = 232;
/// OpenMP SIMD directive.
static const int CXCursor_OMPSimdDirective = 233;
/// OpenMP for directive.
static const int CXCursor_OMPForDirective = 234;
/// OpenMP sections directive.
static const int CXCursor_OMPSectionsDirective = 235;
/// OpenMP section directive.
static const int CXCursor_OMPSectionDirective = 236;
/// OpenMP single directive.
static const int CXCursor_OMPSingleDirective = 237;
/// OpenMP parallel for directive.
static const int CXCursor_OMPParallelForDirective = 238;
/// OpenMP parallel sections directive.
static const int CXCursor_OMPParallelSectionsDirective = 239;
/// OpenMP task directive.
static const int CXCursor_OMPTaskDirective = 240;
/// OpenMP master directive.
static const int CXCursor_OMPMasterDirective = 241;
/// OpenMP critical directive.
static const int CXCursor_OMPCriticalDirective = 242;
/// OpenMP taskyield directive.
static const int CXCursor_OMPTaskyieldDirective = 243;
/// OpenMP barrier directive.
static const int CXCursor_OMPBarrierDirective = 244;
/// OpenMP taskwait directive.
static const int CXCursor_OMPTaskwaitDirective = 245;
/// OpenMP flush directive.
static const int CXCursor_OMPFlushDirective = 246;
/// Windows Structured Exception Handling's leave statement.
static const int CXCursor_SEHLeaveStmt = 247;
/// OpenMP ordered directive.
static const int CXCursor_OMPOrderedDirective = 248;
/// OpenMP atomic directive.
static const int CXCursor_OMPAtomicDirective = 249;
/// OpenMP for SIMD directive.
static const int CXCursor_OMPForSimdDirective = 250;
/// OpenMP parallel for SIMD directive.
static const int CXCursor_OMPParallelForSimdDirective = 251;
/// OpenMP target directive.
static const int CXCursor_OMPTargetDirective = 252;
/// OpenMP teams directive.
static const int CXCursor_OMPTeamsDirective = 253;
/// OpenMP taskgroup directive.
static const int CXCursor_OMPTaskgroupDirective = 254;
/// OpenMP cancellation point directive.
static const int CXCursor_OMPCancellationPointDirective = 255;
/// OpenMP cancel directive.
static const int CXCursor_OMPCancelDirective = 256;
/// OpenMP target data directive.
static const int CXCursor_OMPTargetDataDirective = 257;
/// OpenMP taskloop directive.
static const int CXCursor_OMPTaskLoopDirective = 258;
/// OpenMP taskloop simd directive.
static const int CXCursor_OMPTaskLoopSimdDirective = 259;
/// OpenMP distribute directive.
static const int CXCursor_OMPDistributeDirective = 260;
/// OpenMP target enter data directive.
static const int CXCursor_OMPTargetEnterDataDirective = 261;
/// OpenMP target exit data directive.
static const int CXCursor_OMPTargetExitDataDirective = 262;
/// OpenMP target parallel directive.
static const int CXCursor_OMPTargetParallelDirective = 263;
/// OpenMP target parallel for directive.
static const int CXCursor_OMPTargetParallelForDirective = 264;
/// OpenMP target update directive.
static const int CXCursor_OMPTargetUpdateDirective = 265;
/// OpenMP distribute parallel for directive.
static const int CXCursor_OMPDistributeParallelForDirective = 266;
/// OpenMP distribute parallel for simd directive.
static const int CXCursor_OMPDistributeParallelForSimdDirective = 267;
/// OpenMP distribute simd directive.
static const int CXCursor_OMPDistributeSimdDirective = 268;
/// OpenMP target parallel for simd directive.
static const int CXCursor_OMPTargetParallelForSimdDirective = 269;
/// OpenMP target simd directive.
static const int CXCursor_OMPTargetSimdDirective = 270;
/// OpenMP teams distribute directive.
static const int CXCursor_OMPTeamsDistributeDirective = 271;
/// OpenMP teams distribute simd directive.
static const int CXCursor_OMPTeamsDistributeSimdDirective = 272;
/// OpenMP teams distribute parallel for simd directive.
static const int CXCursor_OMPTeamsDistributeParallelForSimdDirective = 273;
/// OpenMP teams distribute parallel for directive.
static const int CXCursor_OMPTeamsDistributeParallelForDirective = 274;
/// OpenMP target teams directive.
static const int CXCursor_OMPTargetTeamsDirective = 275;
/// OpenMP target teams distribute directive.
static const int CXCursor_OMPTargetTeamsDistributeDirective = 276;
/// OpenMP target teams distribute parallel for directive.
static const int CXCursor_OMPTargetTeamsDistributeParallelForDirective = 277;
/// OpenMP target teams distribute parallel for simd directive.
static const int CXCursor_OMPTargetTeamsDistributeParallelForSimdDirective =
278;
/// OpenMP target teams distribute simd directive.
static const int CXCursor_OMPTargetTeamsDistributeSimdDirective = 279;
/// C++2a std::bit_cast expression.
static const int CXCursor_BuiltinBitCastExpr = 280;
/// OpenMP master taskloop directive.
static const int CXCursor_OMPMasterTaskLoopDirective = 281;
/// OpenMP parallel master taskloop directive.
static const int CXCursor_OMPParallelMasterTaskLoopDirective = 282;
/// OpenMP master taskloop simd directive.
static const int CXCursor_OMPMasterTaskLoopSimdDirective = 283;
/// OpenMP parallel master taskloop simd directive.
static const int CXCursor_OMPParallelMasterTaskLoopSimdDirective = 284;
/// OpenMP parallel master directive.
static const int CXCursor_OMPParallelMasterDirective = 285;
static const int CXCursor_LastStmt = 285;
/// Cursor that represents the translation unit itself.
static const int CXCursor_TranslationUnit = 300;
static const int CXCursor_FirstAttr = 400;
/// An attribute whose specific kind is not exposed via this interface.
static const int CXCursor_UnexposedAttr = 400;
static const int CXCursor_IBActionAttr = 401;
static const int CXCursor_IBOutletAttr = 402;
static const int CXCursor_IBOutletCollectionAttr = 403;
static const int CXCursor_CXXFinalAttr = 404;
static const int CXCursor_CXXOverrideAttr = 405;
static const int CXCursor_AnnotateAttr = 406;
static const int CXCursor_AsmLabelAttr = 407;
static const int CXCursor_PackedAttr = 408;
static const int CXCursor_PureAttr = 409;
static const int CXCursor_ConstAttr = 410;
static const int CXCursor_NoDuplicateAttr = 411;
static const int CXCursor_CUDAConstantAttr = 412;
static const int CXCursor_CUDADeviceAttr = 413;
static const int CXCursor_CUDAGlobalAttr = 414;
static const int CXCursor_CUDAHostAttr = 415;
static const int CXCursor_CUDASharedAttr = 416;
static const int CXCursor_VisibilityAttr = 417;
static const int CXCursor_DLLExport = 418;
static const int CXCursor_DLLImport = 419;
static const int CXCursor_NSReturnsRetained = 420;
static const int CXCursor_NSReturnsNotRetained = 421;
static const int CXCursor_NSReturnsAutoreleased = 422;
static const int CXCursor_NSConsumesSelf = 423;
static const int CXCursor_NSConsumed = 424;
static const int CXCursor_ObjCException = 425;
static const int CXCursor_ObjCNSObject = 426;
static const int CXCursor_ObjCIndependentClass = 427;
static const int CXCursor_ObjCPreciseLifetime = 428;
static const int CXCursor_ObjCReturnsInnerPointer = 429;
static const int CXCursor_ObjCRequiresSuper = 430;
static const int CXCursor_ObjCRootClass = 431;
static const int CXCursor_ObjCSubclassingRestricted = 432;
static const int CXCursor_ObjCExplicitProtocolImpl = 433;
static const int CXCursor_ObjCDesignatedInitializer = 434;
static const int CXCursor_ObjCRuntimeVisible = 435;
static const int CXCursor_ObjCBoxable = 436;
static const int CXCursor_FlagEnum = 437;
static const int CXCursor_ConvergentAttr = 438;
static const int CXCursor_WarnUnusedAttr = 439;
static const int CXCursor_WarnUnusedResultAttr = 440;
static const int CXCursor_AlignedAttr = 441;
static const int CXCursor_LastAttr = 441;
static const int CXCursor_PreprocessingDirective = 500;
static const int CXCursor_MacroDefinition = 501;
static const int CXCursor_MacroExpansion = 502;
static const int CXCursor_MacroInstantiation = 502;
static const int CXCursor_InclusionDirective = 503;
static const int CXCursor_FirstPreprocessing = 500;
static const int CXCursor_LastPreprocessing = 503;
/// A module import declaration.
static const int CXCursor_ModuleImportDecl = 600;
static const int CXCursor_TypeAliasTemplateDecl = 601;
/// A static_assert or _Static_assert node
static const int CXCursor_StaticAssert = 602;
/// a friend declaration.
static const int CXCursor_FriendDecl = 603;
static const int CXCursor_FirstExtraDecl = 600;
static const int CXCursor_LastExtraDecl = 603;
/// A code completion overload candidate.
static const int CXCursor_OverloadCandidate = 700;
}
/// A cursor representing some element in the abstract syntax tree for a
/// translation unit.
class CXCursor extends ffi.Struct {
@ffi.Int32()
external int kind;
@ffi.Int32()
external int xdata;
@ffi.Array.multi([3])
external ffi.Array<ffi.Pointer<ffi.Void>> data;
}
/// Describe the linkage of the entity referred to by a cursor.
abstract class CXLinkageKind {
/// This value indicates that no linkage information is available for a
/// provided CXCursor.
static const int CXLinkage_Invalid = 0;
/// This is the linkage for variables, parameters, and so on that have
/// automatic storage. This covers normal (non-extern) local variables.
static const int CXLinkage_NoLinkage = 1;
/// This is the linkage for static variables and static functions.
static const int CXLinkage_Internal = 2;
/// This is the linkage for entities with external linkage that live in C++
/// anonymous namespaces.
static const int CXLinkage_UniqueExternal = 3;
/// This is the linkage for entities with true, external linkage.
static const int CXLinkage_External = 4;
}
abstract class CXVisibilityKind {
/// This value indicates that no visibility information is available for a
/// provided CXCursor.
static const int CXVisibility_Invalid = 0;
/// Symbol not seen by the linker.
static const int CXVisibility_Hidden = 1;
/// Symbol seen by the linker but resolves to a symbol inside this object.
static const int CXVisibility_Protected = 2;
/// Symbol seen by the linker and acts like a normal symbol.
static const int CXVisibility_Default = 3;
}
/// Describes the availability of a given entity on a particular platform, e.g.,
/// a particular class might only be available on Mac OS 10.7 or newer.
class CXPlatformAvailability extends ffi.Struct {
/// A string that describes the platform for which this structure provides
/// availability information.
external CXString Platform;
/// The version number in which this entity was introduced.
external CXVersion Introduced;
/// The version number in which this entity was deprecated (but is still
/// available).
external CXVersion Deprecated;
/// The version number in which this entity was obsoleted, and therefore is no
/// longer available.
external CXVersion Obsoleted;
/// Whether the entity is unconditionally unavailable on this platform.
@ffi.Int32()
external int Unavailable;
/// An optional message to provide to a user of this API, e.g., to suggest
/// replacement APIs.
external CXString Message;
}
/// Describe the "language" of the entity referred to by a cursor.
abstract class CXLanguageKind {
static const int CXLanguage_Invalid = 0;
static const int CXLanguage_C = 1;
static const int CXLanguage_ObjC = 2;
static const int CXLanguage_CPlusPlus = 3;
}
/// Describe the "thread-local storage (TLS) kind" of the declaration referred
/// to by a cursor.
abstract class CXTLSKind {
static const int CXTLS_None = 0;
static const int CXTLS_Dynamic = 1;
static const int CXTLS_Static = 2;
}
class CXCursorSetImpl extends ffi.Opaque {}
/// A fast container representing a set of CXCursors.
typedef CXCursorSet = ffi.Pointer<CXCursorSetImpl>;
/// Describes the kind of type
abstract class CXTypeKind {
/// Represents an invalid type (e.g., where no type is available).
static const int CXType_Invalid = 0;
/// A type whose specific kind is not exposed via this interface.
static const int CXType_Unexposed = 1;
static const int CXType_Void = 2;
static const int CXType_Bool = 3;
static const int CXType_Char_U = 4;
static const int CXType_UChar = 5;
static const int CXType_Char16 = 6;
static const int CXType_Char32 = 7;
static const int CXType_UShort = 8;
static const int CXType_UInt = 9;
static const int CXType_ULong = 10;
static const int CXType_ULongLong = 11;
static const int CXType_UInt128 = 12;
static const int CXType_Char_S = 13;
static const int CXType_SChar = 14;
static const int CXType_WChar = 15;
static const int CXType_Short = 16;
static const int CXType_Int = 17;
static const int CXType_Long = 18;
static const int CXType_LongLong = 19;
static const int CXType_Int128 = 20;
static const int CXType_Float = 21;
static const int CXType_Double = 22;
static const int CXType_LongDouble = 23;
static const int CXType_NullPtr = 24;
static const int CXType_Overload = 25;
static const int CXType_Dependent = 26;
static const int CXType_ObjCId = 27;
static const int CXType_ObjCClass = 28;
static const int CXType_ObjCSel = 29;
static const int CXType_Float128 = 30;
static const int CXType_Half = 31;
static const int CXType_Float16 = 32;
static const int CXType_ShortAccum = 33;
static const int CXType_Accum = 34;
static const int CXType_LongAccum = 35;
static const int CXType_UShortAccum = 36;
static const int CXType_UAccum = 37;
static const int CXType_ULongAccum = 38;
static const int CXType_FirstBuiltin = 2;
static const int CXType_LastBuiltin = 38;
static const int CXType_Complex = 100;
static const int CXType_Pointer = 101;
static const int CXType_BlockPointer = 102;
static const int CXType_LValueReference = 103;
static const int CXType_RValueReference = 104;
static const int CXType_Record = 105;
static const int CXType_Enum = 106;
static const int CXType_Typedef = 107;
static const int CXType_ObjCInterface = 108;
static const int CXType_ObjCObjectPointer = 109;
static const int CXType_FunctionNoProto = 110;
static const int CXType_FunctionProto = 111;
static const int CXType_ConstantArray = 112;
static const int CXType_Vector = 113;
static const int CXType_IncompleteArray = 114;
static const int CXType_VariableArray = 115;
static const int CXType_DependentSizedArray = 116;
static const int CXType_MemberPointer = 117;
static const int CXType_Auto = 118;
/// Represents a type that was referred to using an elaborated type keyword.
static const int CXType_Elaborated = 119;
static const int CXType_Pipe = 120;
static const int CXType_OCLImage1dRO = 121;
static const int CXType_OCLImage1dArrayRO = 122;
static const int CXType_OCLImage1dBufferRO = 123;
static const int CXType_OCLImage2dRO = 124;
static const int CXType_OCLImage2dArrayRO = 125;
static const int CXType_OCLImage2dDepthRO = 126;
static const int CXType_OCLImage2dArrayDepthRO = 127;
static const int CXType_OCLImage2dMSAARO = 128;
static const int CXType_OCLImage2dArrayMSAARO = 129;
static const int CXType_OCLImage2dMSAADepthRO = 130;
static const int CXType_OCLImage2dArrayMSAADepthRO = 131;
static const int CXType_OCLImage3dRO = 132;
static const int CXType_OCLImage1dWO = 133;
static const int CXType_OCLImage1dArrayWO = 134;
static const int CXType_OCLImage1dBufferWO = 135;
static const int CXType_OCLImage2dWO = 136;
static const int CXType_OCLImage2dArrayWO = 137;
static const int CXType_OCLImage2dDepthWO = 138;
static const int CXType_OCLImage2dArrayDepthWO = 139;
static const int CXType_OCLImage2dMSAAWO = 140;
static const int CXType_OCLImage2dArrayMSAAWO = 141;
static const int CXType_OCLImage2dMSAADepthWO = 142;
static const int CXType_OCLImage2dArrayMSAADepthWO = 143;
static const int CXType_OCLImage3dWO = 144;
static const int CXType_OCLImage1dRW = 145;
static const int CXType_OCLImage1dArrayRW = 146;
static const int CXType_OCLImage1dBufferRW = 147;
static const int CXType_OCLImage2dRW = 148;
static const int CXType_OCLImage2dArrayRW = 149;
static const int CXType_OCLImage2dDepthRW = 150;
static const int CXType_OCLImage2dArrayDepthRW = 151;
static const int CXType_OCLImage2dMSAARW = 152;
static const int CXType_OCLImage2dArrayMSAARW = 153;
static const int CXType_OCLImage2dMSAADepthRW = 154;
static const int CXType_OCLImage2dArrayMSAADepthRW = 155;
static const int CXType_OCLImage3dRW = 156;
static const int CXType_OCLSampler = 157;
static const int CXType_OCLEvent = 158;
static const int CXType_OCLQueue = 159;
static const int CXType_OCLReserveID = 160;
static const int CXType_ObjCObject = 161;
static const int CXType_ObjCTypeParam = 162;
static const int CXType_Attributed = 163;
static const int CXType_OCLIntelSubgroupAVCMcePayload = 164;
static const int CXType_OCLIntelSubgroupAVCImePayload = 165;
static const int CXType_OCLIntelSubgroupAVCRefPayload = 166;
static const int CXType_OCLIntelSubgroupAVCSicPayload = 167;
static const int CXType_OCLIntelSubgroupAVCMceResult = 168;
static const int CXType_OCLIntelSubgroupAVCImeResult = 169;
static const int CXType_OCLIntelSubgroupAVCRefResult = 170;
static const int CXType_OCLIntelSubgroupAVCSicResult = 171;
static const int CXType_OCLIntelSubgroupAVCImeResultSingleRefStreamout = 172;
static const int CXType_OCLIntelSubgroupAVCImeResultDualRefStreamout = 173;
static const int CXType_OCLIntelSubgroupAVCImeSingleRefStreamin = 174;
static const int CXType_OCLIntelSubgroupAVCImeDualRefStreamin = 175;
static const int CXType_ExtVector = 176;
}
/// Describes the calling convention of a function type
abstract class CXCallingConv {
static const int CXCallingConv_Default = 0;
static const int CXCallingConv_C = 1;
static const int CXCallingConv_X86StdCall = 2;
static const int CXCallingConv_X86FastCall = 3;
static const int CXCallingConv_X86ThisCall = 4;
static const int CXCallingConv_X86Pascal = 5;
static const int CXCallingConv_AAPCS = 6;
static const int CXCallingConv_AAPCS_VFP = 7;
static const int CXCallingConv_X86RegCall = 8;
static const int CXCallingConv_IntelOclBicc = 9;
static const int CXCallingConv_Win64 = 10;
static const int CXCallingConv_X86_64Win64 = 10;
static const int CXCallingConv_X86_64SysV = 11;
static const int CXCallingConv_X86VectorCall = 12;
static const int CXCallingConv_Swift = 13;
static const int CXCallingConv_PreserveMost = 14;
static const int CXCallingConv_PreserveAll = 15;
static const int CXCallingConv_AArch64VectorCall = 16;
static const int CXCallingConv_Invalid = 100;
static const int CXCallingConv_Unexposed = 200;
}
/// The type of an element in the abstract syntax tree.
class CXType extends ffi.Struct {
@ffi.Int32()
external int kind;
@ffi.Array.multi([2])
external ffi.Array<ffi.Pointer<ffi.Void>> data;
}
/// Describes the kind of a template argument.
abstract class CXTemplateArgumentKind {
static const int CXTemplateArgumentKind_Null = 0;
static const int CXTemplateArgumentKind_Type = 1;
static const int CXTemplateArgumentKind_Declaration = 2;
static const int CXTemplateArgumentKind_NullPtr = 3;
static const int CXTemplateArgumentKind_Integral = 4;
static const int CXTemplateArgumentKind_Template = 5;
static const int CXTemplateArgumentKind_TemplateExpansion = 6;
static const int CXTemplateArgumentKind_Expression = 7;
static const int CXTemplateArgumentKind_Pack = 8;
static const int CXTemplateArgumentKind_Invalid = 9;
}
abstract class CXTypeNullabilityKind {
/// Values of this type can never be null.
static const int CXTypeNullability_NonNull = 0;
/// Values of this type can be null.
static const int CXTypeNullability_Nullable = 1;
/// Whether values of this type can be null is (explicitly) unspecified. This
/// captures a (fairly rare) case where we can't conclude anything about the
/// nullability of the type even though it has been considered.
static const int CXTypeNullability_Unspecified = 2;
/// Nullability is not applicable to this type.
static const int CXTypeNullability_Invalid = 3;
}
/// List the possible error codes for clang_Type_getSizeOf,
/// clang_Type_getAlignOf, clang_Type_getOffsetOf and clang_Cursor_getOffsetOf.
abstract class CXTypeLayoutError {
/// Type is of kind CXType_Invalid.
static const int CXTypeLayoutError_Invalid = -1;
/// The type is an incomplete Type.
static const int CXTypeLayoutError_Incomplete = -2;
/// The type is a dependent Type.
static const int CXTypeLayoutError_Dependent = -3;
/// The type is not a constant size type.
static const int CXTypeLayoutError_NotConstantSize = -4;
/// The Field name is not valid for this record.
static const int CXTypeLayoutError_InvalidFieldName = -5;
/// The type is undeduced.
static const int CXTypeLayoutError_Undeduced = -6;
}
abstract class CXRefQualifierKind {
/// No ref-qualifier was provided.
static const int CXRefQualifier_None = 0;
/// An lvalue ref-qualifier was provided ( &).
static const int CXRefQualifier_LValue = 1;
/// An rvalue ref-qualifier was provided ( &&).
static const int CXRefQualifier_RValue = 2;
}
/// Represents the C++ access control level to a base class for a cursor with
/// kind CX_CXXBaseSpecifier.
abstract class CX_CXXAccessSpecifier {
static const int CX_CXXInvalidAccessSpecifier = 0;
static const int CX_CXXPublic = 1;
static const int CX_CXXProtected = 2;
static const int CX_CXXPrivate = 3;
}
/// Represents the storage classes as declared in the source. CX_SC_Invalid was
/// added for the case that the passed cursor in not a declaration.
abstract class CX_StorageClass {
static const int CX_SC_Invalid = 0;
static const int CX_SC_None = 1;
static const int CX_SC_Extern = 2;
static const int CX_SC_Static = 3;
static const int CX_SC_PrivateExtern = 4;
static const int CX_SC_OpenCLWorkGroupLocal = 5;
static const int CX_SC_Auto = 6;
static const int CX_SC_Register = 7;
}
/// Describes how the traversal of the children of a particular cursor should
/// proceed after visiting a particular child cursor.
abstract class CXChildVisitResult {
/// Terminates the cursor traversal.
static const int CXChildVisit_Break = 0;
/// Continues the cursor traversal with the next sibling of the cursor just
/// visited, without visiting its children.
static const int CXChildVisit_Continue = 1;
/// Recursively traverse the children of this cursor, using the same visitor
/// and client data.
static const int CXChildVisit_Recurse = 2;
}
/// Visitor invoked for each cursor found by a traversal.
typedef CXCursorVisitor = ffi.Pointer<
ffi.NativeFunction<ffi.Int32 Function(CXCursor, CXCursor, CXClientData)>>;
/// Opaque pointer representing client data that will be passed through to
/// various callbacks and visitors.
typedef CXClientData = ffi.Pointer<ffi.Void>;
/// Properties for the printing policy.
abstract class CXPrintingPolicyProperty {
static const int CXPrintingPolicy_Indentation = 0;
static const int CXPrintingPolicy_SuppressSpecifiers = 1;
static const int CXPrintingPolicy_SuppressTagKeyword = 2;
static const int CXPrintingPolicy_IncludeTagDefinition = 3;
static const int CXPrintingPolicy_SuppressScope = 4;
static const int CXPrintingPolicy_SuppressUnwrittenScope = 5;
static const int CXPrintingPolicy_SuppressInitializers = 6;
static const int CXPrintingPolicy_ConstantArraySizeAsWritten = 7;
static const int CXPrintingPolicy_AnonymousTagLocations = 8;
static const int CXPrintingPolicy_SuppressStrongLifetime = 9;
static const int CXPrintingPolicy_SuppressLifetimeQualifiers = 10;
static const int CXPrintingPolicy_SuppressTemplateArgsInCXXConstructors = 11;
static const int CXPrintingPolicy_Bool = 12;
static const int CXPrintingPolicy_Restrict = 13;
static const int CXPrintingPolicy_Alignof = 14;
static const int CXPrintingPolicy_UnderscoreAlignof = 15;
static const int CXPrintingPolicy_UseVoidForZeroParams = 16;
static const int CXPrintingPolicy_TerseOutput = 17;
static const int CXPrintingPolicy_PolishForDeclaration = 18;
static const int CXPrintingPolicy_Half = 19;
static const int CXPrintingPolicy_MSWChar = 20;
static const int CXPrintingPolicy_IncludeNewlines = 21;
static const int CXPrintingPolicy_MSVCFormatting = 22;
static const int CXPrintingPolicy_ConstantsAsWritten = 23;
static const int CXPrintingPolicy_SuppressImplicitBase = 24;
static const int CXPrintingPolicy_FullyQualifiedName = 25;
static const int CXPrintingPolicy_LastProperty = 25;
}
/// Opaque pointer representing a policy that controls pretty printing for
/// clang_getCursorPrettyPrinted.
typedef CXPrintingPolicy = ffi.Pointer<ffi.Void>;
/// Property attributes for a CXCursor_ObjCPropertyDecl.
abstract class CXObjCPropertyAttrKind {
static const int CXObjCPropertyAttr_noattr = 0;
static const int CXObjCPropertyAttr_readonly = 1;
static const int CXObjCPropertyAttr_getter = 2;
static const int CXObjCPropertyAttr_assign = 4;
static const int CXObjCPropertyAttr_readwrite = 8;
static const int CXObjCPropertyAttr_retain = 16;
static const int CXObjCPropertyAttr_copy = 32;
static const int CXObjCPropertyAttr_nonatomic = 64;
static const int CXObjCPropertyAttr_setter = 128;
static const int CXObjCPropertyAttr_atomic = 256;
static const int CXObjCPropertyAttr_weak = 512;
static const int CXObjCPropertyAttr_strong = 1024;
static const int CXObjCPropertyAttr_unsafe_unretained = 2048;
static const int CXObjCPropertyAttr_class = 4096;
}
/// 'Qualifiers' written next to the return and parameter types in Objective-C
/// method declarations.
abstract class CXObjCDeclQualifierKind {
static const int CXObjCDeclQualifier_None = 0;
static const int CXObjCDeclQualifier_In = 1;
static const int CXObjCDeclQualifier_Inout = 2;
static const int CXObjCDeclQualifier_Out = 4;
static const int CXObjCDeclQualifier_Bycopy = 8;
static const int CXObjCDeclQualifier_Byref = 16;
static const int CXObjCDeclQualifier_Oneway = 32;
}
/// The functions in this group provide access to information about modules.
typedef CXModule = ffi.Pointer<ffi.Void>;
abstract class CXNameRefFlags {
/// Include the nested-name-specifier, e.g. Foo:: in x.Foo::y, in the range.
static const int CXNameRange_WantQualifier = 1;
/// Include the explicit template arguments, e.g. <int> in x.f<int>, in the
/// range.
static const int CXNameRange_WantTemplateArgs = 2;
/// If the name is non-contiguous, return the full spanning range.
static const int CXNameRange_WantSinglePiece = 4;
}
/// Describes a kind of token.
abstract class CXTokenKind {
/// A token that contains some kind of punctuation.
static const int CXToken_Punctuation = 0;
/// A language keyword.
static const int CXToken_Keyword = 1;
/// An identifier (that is not a keyword).
static const int CXToken_Identifier = 2;
/// A numeric, string, or character literal.
static const int CXToken_Literal = 3;
/// A comment.
static const int CXToken_Comment = 4;
}
/// Describes a single preprocessing token.
class CXToken extends ffi.Struct {
@ffi.Array.multi([4])
external ffi.Array<ffi.Uint32> int_data;
external ffi.Pointer<ffi.Void> ptr_data;
}
/// A single result of code completion.
class CXCompletionResult extends ffi.Struct {
/// The kind of entity that this completion refers to.
@ffi.Int32()
external int CursorKind;
/// The code-completion string that describes how to insert this
/// code-completion result into the editing buffer.
external CXCompletionString CompletionString;
}
/// A semantic string that describes a code-completion result.
typedef CXCompletionString = ffi.Pointer<ffi.Void>;
/// Describes a single piece of text within a code-completion string.
abstract class CXCompletionChunkKind {
/// A code-completion string that describes "optional" text that could be a
/// part of the template (but is not required).
static const int CXCompletionChunk_Optional = 0;
/// Text that a user would be expected to type to get this code-completion
/// result.
static const int CXCompletionChunk_TypedText = 1;
/// Text that should be inserted as part of a code-completion result.
static const int CXCompletionChunk_Text = 2;
/// Placeholder text that should be replaced by the user.
static const int CXCompletionChunk_Placeholder = 3;
/// Informative text that should be displayed but never inserted as part of
/// the template.
static const int CXCompletionChunk_Informative = 4;
/// Text that describes the current parameter when code-completion is
/// referring to function call, message send, or template specialization.
static const int CXCompletionChunk_CurrentParameter = 5;
/// A left parenthesis ('('), used to initiate a function call or signal the
/// beginning of a function parameter list.
static const int CXCompletionChunk_LeftParen = 6;
/// A right parenthesis (')'), used to finish a function call or signal the
/// end of a function parameter list.
static const int CXCompletionChunk_RightParen = 7;
/// A left bracket ('[').
static const int CXCompletionChunk_LeftBracket = 8;
/// A right bracket (']').
static const int CXCompletionChunk_RightBracket = 9;
/// A left brace ('{').
static const int CXCompletionChunk_LeftBrace = 10;
/// A right brace ('}').
static const int CXCompletionChunk_RightBrace = 11;
/// A left angle bracket ('<').
static const int CXCompletionChunk_LeftAngle = 12;
/// A right angle bracket ('>').
static const int CXCompletionChunk_RightAngle = 13;
/// A comma separator (',').
static const int CXCompletionChunk_Comma = 14;
/// Text that specifies the result type of a given result.
static const int CXCompletionChunk_ResultType = 15;
/// A colon (':').
static const int CXCompletionChunk_Colon = 16;
/// A semicolon (';').
static const int CXCompletionChunk_SemiColon = 17;
/// An '=' sign.
static const int CXCompletionChunk_Equal = 18;
/// Horizontal space (' ').
static const int CXCompletionChunk_HorizontalSpace = 19;
/// Vertical space ('\n'), after which it is generally a good idea to perform
/// indentation.
static const int CXCompletionChunk_VerticalSpace = 20;
}
/// Contains the results of code-completion.
class CXCodeCompleteResults extends ffi.Struct {
/// The code-completion results.
external ffi.Pointer<CXCompletionResult> Results;
/// The number of code-completion results stored in the Results array.
@ffi.Uint32()
external int NumResults;
}
/// Flags that can be passed to clang_codeCompleteAt() to modify its behavior.
abstract class CXCodeComplete_Flags {
/// Whether to include macros within the set of code completions returned.
static const int CXCodeComplete_IncludeMacros = 1;
/// Whether to include code patterns for language constructs within the set of
/// code completions, e.g., for loops.
static const int CXCodeComplete_IncludeCodePatterns = 2;
/// Whether to include brief documentation within the set of code completions
/// returned.
static const int CXCodeComplete_IncludeBriefComments = 4;
/// Whether to speed up completion by omitting top- or namespace-level
/// entities defined in the preamble. There's no guarantee any particular
/// entity is omitted. This may be useful if the headers are indexed
/// externally.
static const int CXCodeComplete_SkipPreamble = 8;
/// Whether to include completions with small fix-its, e.g. change '.' to '->'
/// on member access, etc.
static const int CXCodeComplete_IncludeCompletionsWithFixIts = 16;
}
/// Bits that represent the context under which completion is occurring.
abstract class CXCompletionContext {
/// The context for completions is unexposed, as only Clang results should be
/// included. (This is equivalent to having no context bits set.)
static const int CXCompletionContext_Unexposed = 0;
/// Completions for any possible type should be included in the results.
static const int CXCompletionContext_AnyType = 1;
/// Completions for any possible value (variables, function calls, etc.)
/// should be included in the results.
static const int CXCompletionContext_AnyValue = 2;
/// Completions for values that resolve to an Objective-C object should be
/// included in the results.
static const int CXCompletionContext_ObjCObjectValue = 4;
/// Completions for values that resolve to an Objective-C selector should be
/// included in the results.
static const int CXCompletionContext_ObjCSelectorValue = 8;
/// Completions for values that resolve to a C++ class type should be included
/// in the results.
static const int CXCompletionContext_CXXClassTypeValue = 16;
/// Completions for fields of the member being accessed using the dot operator
/// should be included in the results.
static const int CXCompletionContext_DotMemberAccess = 32;
/// Completions for fields of the member being accessed using the arrow
/// operator should be included in the results.
static const int CXCompletionContext_ArrowMemberAccess = 64;
/// Completions for properties of the Objective-C object being accessed using
/// the dot operator should be included in the results.
static const int CXCompletionContext_ObjCPropertyAccess = 128;
/// Completions for enum tags should be included in the results.
static const int CXCompletionContext_EnumTag = 256;
/// Completions for union tags should be included in the results.
static const int CXCompletionContext_UnionTag = 512;
/// Completions for struct tags should be included in the results.
static const int CXCompletionContext_StructTag = 1024;
/// Completions for C++ class names should be included in the results.
static const int CXCompletionContext_ClassTag = 2048;
/// Completions for C++ namespaces and namespace aliases should be included in
/// the results.
static const int CXCompletionContext_Namespace = 4096;
/// Completions for C++ nested name specifiers should be included in the
/// results.
static const int CXCompletionContext_NestedNameSpecifier = 8192;
/// Completions for Objective-C interfaces (classes) should be included in the
/// results.
static const int CXCompletionContext_ObjCInterface = 16384;
/// Completions for Objective-C protocols should be included in the results.
static const int CXCompletionContext_ObjCProtocol = 32768;
/// Completions for Objective-C categories should be included in the results.
static const int CXCompletionContext_ObjCCategory = 65536;
/// Completions for Objective-C instance messages should be included in the
/// results.
static const int CXCompletionContext_ObjCInstanceMessage = 131072;
/// Completions for Objective-C class messages should be included in the
/// results.
static const int CXCompletionContext_ObjCClassMessage = 262144;
/// Completions for Objective-C selector names should be included in the
/// results.
static const int CXCompletionContext_ObjCSelectorName = 524288;
/// Completions for preprocessor macro names should be included in the
/// results.
static const int CXCompletionContext_MacroName = 1048576;
/// Natural language completions should be included in the results.
static const int CXCompletionContext_NaturalLanguage = 2097152;
/// #include file completions should be included in the results.
static const int CXCompletionContext_IncludedFile = 4194304;
/// The current context is unknown, so set all contexts.
static const int CXCompletionContext_Unknown = 8388607;
}
/// Visitor invoked for each file in a translation unit (used with
/// clang_getInclusions()).
typedef CXInclusionVisitor = ffi.Pointer<
ffi.NativeFunction<
ffi.Void Function(
CXFile, ffi.Pointer<CXSourceLocation>, ffi.Uint32, CXClientData)>>;
abstract class CXEvalResultKind {
static const int CXEval_Int = 1;
static const int CXEval_Float = 2;
static const int CXEval_ObjCStrLiteral = 3;
static const int CXEval_StrLiteral = 4;
static const int CXEval_CFStr = 5;
static const int CXEval_Other = 6;
static const int CXEval_UnExposed = 0;
}
/// Evaluation result of a cursor
typedef CXEvalResult = ffi.Pointer<ffi.Void>;
/// A remapping of original source files and their translated files.
typedef CXRemapping = ffi.Pointer<ffi.Void>;
/// @{
abstract class CXVisitorResult {
static const int CXVisit_Break = 0;
static const int CXVisit_Continue = 1;
}
class CXCursorAndRangeVisitor extends ffi.Struct {
external ffi.Pointer<ffi.Void> context;
external ffi.Pointer<
ffi.NativeFunction<
ffi.Int32 Function(
ffi.Pointer<ffi.Void>, CXCursor, CXSourceRange)>> visit;
}
abstract class CXResult {
/// Function returned successfully.
static const int CXResult_Success = 0;
/// One of the parameters was invalid for the function.
static const int CXResult_Invalid = 1;
/// The function was terminated by a callback (e.g. it returned CXVisit_Break)
static const int CXResult_VisitBreak = 2;
}
/// Source location passed to index callbacks.
class CXIdxLoc extends ffi.Struct {
@ffi.Array.multi([2])
external ffi.Array<ffi.Pointer<ffi.Void>> ptr_data;
@ffi.Uint32()
external int int_data;
}
/// Data for ppIncludedFile callback.
class CXIdxIncludedFileInfo extends ffi.Struct {
/// Location of '#' in the #include/#import directive.
external CXIdxLoc hashLoc;
/// Filename as written in the #include/#import directive.
external ffi.Pointer<ffi.Int8> filename;
/// The actual file that the #include/#import directive resolved to.
external CXFile file;
@ffi.Int32()
external int isImport;
@ffi.Int32()
external int isAngled;
/// Non-zero if the directive was automatically turned into a module import.
@ffi.Int32()
external int isModuleImport;
}
/// Data for IndexerCallbacks#importedASTFile.
class CXIdxImportedASTFileInfo extends ffi.Struct {
/// Top level AST file containing the imported PCH, module or submodule.
external CXFile file;
/// The imported module or NULL if the AST file is a PCH.
external CXModule module;
/// Location where the file is imported. Applicable only for modules.
external CXIdxLoc loc;
/// Non-zero if an inclusion directive was automatically turned into a module
/// import. Applicable only for modules.
@ffi.Int32()
external int isImplicit;
}
abstract class CXIdxEntityKind {
static const int CXIdxEntity_Unexposed = 0;
static const int CXIdxEntity_Typedef = 1;
static const int CXIdxEntity_Function = 2;
static const int CXIdxEntity_Variable = 3;
static const int CXIdxEntity_Field = 4;
static const int CXIdxEntity_EnumConstant = 5;
static const int CXIdxEntity_ObjCClass = 6;
static const int CXIdxEntity_ObjCProtocol = 7;
static const int CXIdxEntity_ObjCCategory = 8;
static const int CXIdxEntity_ObjCInstanceMethod = 9;
static const int CXIdxEntity_ObjCClassMethod = 10;
static const int CXIdxEntity_ObjCProperty = 11;
static const int CXIdxEntity_ObjCIvar = 12;
static const int CXIdxEntity_Enum = 13;
static const int CXIdxEntity_Struct = 14;
static const int CXIdxEntity_Union = 15;
static const int CXIdxEntity_CXXClass = 16;
static const int CXIdxEntity_CXXNamespace = 17;
static const int CXIdxEntity_CXXNamespaceAlias = 18;
static const int CXIdxEntity_CXXStaticVariable = 19;
static const int CXIdxEntity_CXXStaticMethod = 20;
static const int CXIdxEntity_CXXInstanceMethod = 21;
static const int CXIdxEntity_CXXConstructor = 22;
static const int CXIdxEntity_CXXDestructor = 23;
static const int CXIdxEntity_CXXConversionFunction = 24;
static const int CXIdxEntity_CXXTypeAlias = 25;
static const int CXIdxEntity_CXXInterface = 26;
}
abstract class CXIdxEntityLanguage {
static const int CXIdxEntityLang_None = 0;
static const int CXIdxEntityLang_C = 1;
static const int CXIdxEntityLang_ObjC = 2;
static const int CXIdxEntityLang_CXX = 3;
static const int CXIdxEntityLang_Swift = 4;
}
/// Extra C++ template information for an entity. This can apply to:
/// CXIdxEntity_Function CXIdxEntity_CXXClass CXIdxEntity_CXXStaticMethod
/// CXIdxEntity_CXXInstanceMethod CXIdxEntity_CXXConstructor
/// CXIdxEntity_CXXConversionFunction CXIdxEntity_CXXTypeAlias
abstract class CXIdxEntityCXXTemplateKind {
static const int CXIdxEntity_NonTemplate = 0;
static const int CXIdxEntity_Template = 1;
static const int CXIdxEntity_TemplatePartialSpecialization = 2;
static const int CXIdxEntity_TemplateSpecialization = 3;
}
abstract class CXIdxAttrKind {
static const int CXIdxAttr_Unexposed = 0;
static const int CXIdxAttr_IBAction = 1;
static const int CXIdxAttr_IBOutlet = 2;
static const int CXIdxAttr_IBOutletCollection = 3;
}
class CXIdxAttrInfo extends ffi.Struct {
@ffi.Int32()
external int kind;
external CXCursor cursor;
external CXIdxLoc loc;
}
class CXIdxEntityInfo extends ffi.Struct {
@ffi.Int32()
external int kind;
@ffi.Int32()
external int templateKind;
@ffi.Int32()
external int lang;
external ffi.Pointer<ffi.Int8> name;
external ffi.Pointer<ffi.Int8> USR;
external CXCursor cursor;
external ffi.Pointer<ffi.Pointer<CXIdxAttrInfo>> attributes;
@ffi.Uint32()
external int numAttributes;
}
class CXIdxContainerInfo extends ffi.Struct {
external CXCursor cursor;
}
class CXIdxIBOutletCollectionAttrInfo extends ffi.Struct {
external ffi.Pointer<CXIdxAttrInfo> attrInfo;
external ffi.Pointer<CXIdxEntityInfo> objcClass;
external CXCursor classCursor;
external CXIdxLoc classLoc;
}
abstract class CXIdxDeclInfoFlags {
static const int CXIdxDeclFlag_Skipped = 1;
}
class CXIdxDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxEntityInfo> entityInfo;
external CXCursor cursor;
external CXIdxLoc loc;
external ffi.Pointer<CXIdxContainerInfo> semanticContainer;
/// Generally same as #semanticContainer but can be different in cases like
/// out-of-line C++ member functions.
external ffi.Pointer<CXIdxContainerInfo> lexicalContainer;
@ffi.Int32()
external int isRedeclaration;
@ffi.Int32()
external int isDefinition;
@ffi.Int32()
external int isContainer;
external ffi.Pointer<CXIdxContainerInfo> declAsContainer;
/// Whether the declaration exists in code or was created implicitly by the
/// compiler, e.g. implicit Objective-C methods for properties.
@ffi.Int32()
external int isImplicit;
external ffi.Pointer<ffi.Pointer<CXIdxAttrInfo>> attributes;
@ffi.Uint32()
external int numAttributes;
@ffi.Uint32()
external int flags;
}
abstract class CXIdxObjCContainerKind {
static const int CXIdxObjCContainer_ForwardRef = 0;
static const int CXIdxObjCContainer_Interface = 1;
static const int CXIdxObjCContainer_Implementation = 2;
}
class CXIdxObjCContainerDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxDeclInfo> declInfo;
@ffi.Int32()
external int kind;
}
class CXIdxBaseClassInfo extends ffi.Struct {
external ffi.Pointer<CXIdxEntityInfo> base;
external CXCursor cursor;
external CXIdxLoc loc;
}
class CXIdxObjCProtocolRefInfo extends ffi.Struct {
external ffi.Pointer<CXIdxEntityInfo> protocol;
external CXCursor cursor;
external CXIdxLoc loc;
}
class CXIdxObjCProtocolRefListInfo extends ffi.Struct {
external ffi.Pointer<ffi.Pointer<CXIdxObjCProtocolRefInfo>> protocols;
@ffi.Uint32()
external int numProtocols;
}
class CXIdxObjCInterfaceDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxObjCContainerDeclInfo> containerInfo;
external ffi.Pointer<CXIdxBaseClassInfo> superInfo;
external ffi.Pointer<CXIdxObjCProtocolRefListInfo> protocols;
}
class CXIdxObjCCategoryDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxObjCContainerDeclInfo> containerInfo;
external ffi.Pointer<CXIdxEntityInfo> objcClass;
external CXCursor classCursor;
external CXIdxLoc classLoc;
external ffi.Pointer<CXIdxObjCProtocolRefListInfo> protocols;
}
class CXIdxObjCPropertyDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxDeclInfo> declInfo;
external ffi.Pointer<CXIdxEntityInfo> getter;
external ffi.Pointer<CXIdxEntityInfo> setter;
}
class CXIdxCXXClassDeclInfo extends ffi.Struct {
external ffi.Pointer<CXIdxDeclInfo> declInfo;
external ffi.Pointer<ffi.Pointer<CXIdxBaseClassInfo>> bases;
@ffi.Uint32()
external int numBases;
}
/// Data for IndexerCallbacks#indexEntityReference.
abstract class CXIdxEntityRefKind {
/// The entity is referenced directly in user's code.
static const int CXIdxEntityRef_Direct = 1;
/// An implicit reference, e.g. a reference of an Objective-C method via the
/// dot syntax.
static const int CXIdxEntityRef_Implicit = 2;
}
/// Roles that are attributed to symbol occurrences.
abstract class CXSymbolRole {
static const int CXSymbolRole_None = 0;
static const int CXSymbolRole_Declaration = 1;
static const int CXSymbolRole_Definition = 2;
static const int CXSymbolRole_Reference = 4;
static const int CXSymbolRole_Read = 8;
static const int CXSymbolRole_Write = 16;
static const int CXSymbolRole_Call = 32;
static const int CXSymbolRole_Dynamic = 64;
static const int CXSymbolRole_AddressOf = 128;
static const int CXSymbolRole_Implicit = 256;
}
/// Data for IndexerCallbacks#indexEntityReference.
class CXIdxEntityRefInfo extends ffi.Struct {
@ffi.Int32()
external int kind;
/// Reference cursor.
external CXCursor cursor;
external CXIdxLoc loc;
/// The entity that gets referenced.
external ffi.Pointer<CXIdxEntityInfo> referencedEntity;
/// Immediate "parent" of the reference. For example:
external ffi.Pointer<CXIdxEntityInfo> parentEntity;
/// Lexical container context of the reference.
external ffi.Pointer<CXIdxContainerInfo> container;
/// Sets of symbol roles of the reference.
@ffi.Int32()
external int role;
}
/// A group of callbacks used by #clang_indexSourceFile and
/// #clang_indexTranslationUnit.
class IndexerCallbacks extends ffi.Struct {
/// Called periodically to check whether indexing should be aborted. Should
/// return 0 to continue, and non-zero to abort.
external ffi.Pointer<
ffi.NativeFunction<
ffi.Int32 Function(CXClientData, ffi.Pointer<ffi.Void>)>> abortQuery;
/// Called at the end of indexing; passes the complete diagnostic set.
external ffi.Pointer<
ffi.NativeFunction<
ffi.Void Function(
CXClientData, CXDiagnosticSet, ffi.Pointer<ffi.Void>)>>
diagnostic;
external ffi.Pointer<
ffi.NativeFunction<
CXIdxClientFile Function(
CXClientData, CXFile, ffi.Pointer<ffi.Void>)>> enteredMainFile;
/// Called when a file gets #included/#imported.
external ffi.Pointer<
ffi.NativeFunction<
CXIdxClientFile Function(
CXClientData, ffi.Pointer<CXIdxIncludedFileInfo>)>>
ppIncludedFile;
/// Called when a AST file (PCH or module) gets imported.
external ffi.Pointer<
ffi.NativeFunction<
CXIdxClientASTFile Function(
CXClientData, ffi.Pointer<CXIdxImportedASTFileInfo>)>>
importedASTFile;
/// Called at the beginning of indexing a translation unit.
external ffi.Pointer<
ffi.NativeFunction<
CXIdxClientContainer Function(
CXClientData, ffi.Pointer<ffi.Void>)>> startedTranslationUnit;
external ffi.Pointer<
ffi.NativeFunction<
ffi.Void Function(CXClientData, ffi.Pointer<CXIdxDeclInfo>)>>
indexDeclaration;
/// Called to index a reference of an entity.
external ffi.Pointer<
ffi.NativeFunction<
ffi.Void Function(CXClientData, ffi.Pointer<CXIdxEntityRefInfo>)>>
indexEntityReference;
}
/// The client's data object that is associated with a CXFile.
typedef CXIdxClientFile = ffi.Pointer<ffi.Void>;
/// The client's data object that is associated with an AST file (PCH or
/// module).
typedef CXIdxClientASTFile = ffi.Pointer<ffi.Void>;
/// The client's data object that is associated with a semantic container of
/// entities.
typedef CXIdxClientContainer = ffi.Pointer<ffi.Void>;
/// The client's data object that is associated with a semantic entity.
typedef CXIdxClientEntity = ffi.Pointer<ffi.Void>;
/// An indexing action/session, to be applied to one or multiple translation
/// units.
typedef CXIndexAction = ffi.Pointer<ffi.Void>;
abstract class CXIndexOptFlags {
/// Used to indicate that no special indexing options are needed.
static const int CXIndexOpt_None = 0;
/// Used to indicate that IndexerCallbacks#indexEntityReference should be
/// invoked for only one reference of an entity per source file that does not
/// also include a declaration/definition of the entity.
static const int CXIndexOpt_SuppressRedundantRefs = 1;
/// Function-local symbols should be indexed. If this is not set
/// function-local symbols will be ignored.
static const int CXIndexOpt_IndexFunctionLocalSymbols = 2;
/// Implicit function/class template instantiations should be indexed. If this
/// is not set, implicit instantiations will be ignored.
static const int CXIndexOpt_IndexImplicitTemplateInstantiations = 4;
/// Suppress all compiler warnings when parsing for indexing.
static const int CXIndexOpt_SuppressWarnings = 8;
/// Skip a function/method body that was already parsed during an indexing
/// session associated with a CXIndexAction object. Bodies in system headers
/// are always skipped.
static const int CXIndexOpt_SkipParsedBodiesInSession = 16;
}
/// Visitor invoked for each field found by a traversal.
typedef CXFieldVisitor = ffi
.Pointer<ffi.NativeFunction<ffi.Int32 Function(CXCursor, CXClientData)>>;
const int CINDEX_VERSION_MAJOR = 0;
const int CINDEX_VERSION_MINOR = 59;
const int CINDEX_VERSION = 59;
const String CINDEX_VERSION_STRING = '0.59';