Modules

Bindings_Generator

moduleSource

Available on macOS, Linux, Windows

#import "Bindings_Generator";

Module parameters#

TARGET_OS: type_of(OS) = xx OS
The operating system the generated bindings are for.

Procedures#

Model helpers#

Naming helpers#

Modifiers#

Compatibility tokens#

Platform helpers#

(os := OS, cpu := CPU) -> (libc_path: string, libc_platform_path: string, success: bool)
(paths: [] string, identifier: string, library_path: string, treat_as_system_library: bool, static_library_suffix := "", shared_library_suffix := "") -> *Library_Info

Emission helpers#

Bindings driver#

Binding literals#

Binding tree#

Binding native options#

Cpp fragments#

Binding type emission#

Binding bitfields#

Declaration emission#

Value emission#

Macro expressions#

Generator run#

Binding cursor source#

log2 overloadsSource
(cur: CXCursor, format_string: string, args: ..Any, loc := #caller_location, flags := Log_Flags.NONE, user_flags: u32 = 0)
(location: Location, format_string: string, args: ..Any, loc := #caller_location, flags := Log_Flags.NONE, user_flags: u32 = 0)
log_error2 overloadsSource
(cur: CXCursor, format_string: string, args: ..Any, loc := #caller_location, flags := Log_Flags.NONE, user_flags: u32 = 0)
(location: Location, format_string: string, args: ..Any, loc := #caller_location, flags := Log_Flags.NONE, user_flags: u32 = 0)

Binding type queries#

Binding expression normalization#

Binding declaration visitors#

Binding model properties#

Binding native properties#

Native parser API#

Native extended API#

Foreign#

Types#

:: enum
NONE
DECLARATION
FUNCTION
ENUM
TYPEDEF
STRUCT
BITFIELD
NAMESPACE
MACRO_DEFINITION
TYPE_REFERENCE
LITERAL
UNARY_OPERATOR
BINARY_OPERATOR
STRUCT_LITERAL
PAREN_EXPRESSION
:: enum_flags
NEEDS_ARGUMENT_WRAPPER
NEEDS_PRINTF_WRAPPER
POINTER_TO_VALUE
OMIT_FROM_OUTPUT
OMIT_FROM_CHECKS
NEEDS_DEFAULT_ARGUMENT_CAST
IS_CONST
IS_METADATA
QUALIFIER_AS
QUALIFIER_USING
TYPE_INFO_NONE
TYPE_INFO_PROCEDURES_ARE_VOID_POINTERS
NO_SPACING
TEMPLATE
DEPRECATED
PROTECTED
PRIVATE
:: enum_flags
CONSTRUCTORS
DESTRUCTORS
FUNCTIONS_WITH_VALIST
SYMBOLS_WITH_UNKNOWN_FOREIGN_LIBS
INLINED_FUNCTIONS
:: struct
int_data: [4] u32
ptr_data: *void
:: enum
Invalid
None
Extern
Static
PrivateExtern
OpenCLWorkGroupLocal
Auto
Register
:: enum
UnexposedDecl
StructDecl
UnionDecl
ClassDecl
EnumDecl
FieldDecl
EnumConstantDecl
FunctionDecl
VarDecl
ParmDecl
ObjCInterfaceDecl
ObjCCategoryDecl
ObjCProtocolDecl
ObjCPropertyDecl
ObjCIvarDecl
ObjCInstanceMethodDecl
ObjCClassMethodDecl
ObjCImplementationDecl
ObjCCategoryImplDecl
TypedefDecl
CXXMethod
Namespace
LinkageSpec
Constructor
Destructor
ConversionFunction
TemplateTypeParameter
NonTypeTemplateParameter
TemplateTemplateParameter
FunctionTemplate
ClassTemplate
ClassTemplatePartialSpecialization
NamespaceAlias
UsingDirective
UsingDeclaration
TypeAliasDecl
ObjCSynthesizeDecl
ObjCDynamicDecl
CXXAccessSpecifier
OverloadCandidate
ConceptDecl
FriendDecl
ObjCSuperClassRef
ObjCProtocolRef
ObjCClassRef
TypeRef
CXXBaseSpecifier
TemplateRef
NamespaceRef
MemberRef
LabelRef
OverloadedDeclRef
VariableRef
StaticAssert
TypeAliasTemplateDecl
InvalidFile
NoDeclFound
NotImplemented
InvalidCode
ModuleImportDecl
InclusionDirective
UnexposedExpr
DeclRefExpr
MemberRefExpr
CallExpr
ObjCMessageExpr
BlockExpr
IntegerLiteral
FloatingLiteral
ImaginaryLiteral
StringLiteral
CharacterLiteral
ParenExpr
UnaryOperator
ArraySubscriptExpr
BinaryOperator
CompoundAssignOperator
ConditionalOperator
CStyleCastExpr
CompoundLiteralExpr
InitListExpr
AddrLabelExpr
StmtExpr
GenericSelectionExpr
GNUNullExpr
CXXStaticCastExpr
CXXDynamicCastExpr
CXXReinterpretCastExpr
CXXConstCastExpr
CXXFunctionalCastExpr
CXXTypeidExpr
CXXBoolLiteralExpr
CXXNullPtrLiteralExpr
CXXThisExpr
CXXThrowExpr
CXXNewExpr
CXXDeleteExpr
UnaryExpr
ObjCStringLiteral
ObjCEncodeExpr
ObjCSelectorExpr
ObjCProtocolExpr
ObjCBridgedCastExpr
PackExpansionExpr
SizeOfPackExpr
LambdaExpr
ObjCBoolLiteralExpr
ObjCSelfExpr
ArraySectionExpr
ObjCAvailabilityCheckExpr
FixedPointLiteral
OMPArrayShapingExpr
OMPIteratorExpr
CXXAddrspaceCastExpr
ConceptSpecializationExpr
RequiresExpr
CXXParenListInitExpr
PackIndexingExpr
MacroInstantiation
MacroExpansion
UnexposedStmt
LabelStmt
CompoundStmt
CaseStmt
DefaultStmt
IfStmt
SwitchStmt
WhileStmt
DoStmt
ForStmt
GotoStmt
IndirectGotoStmt
ContinueStmt
BreakStmt
ReturnStmt
GCCAsmStmt
AsmStmt
ObjCAtTryStmt
ObjCAtCatchStmt
ObjCAtFinallyStmt
ObjCAtThrowStmt
ObjCAtSynchronizedStmt
ObjCAutoreleasePoolStmt
ObjCForCollectionStmt
CXXCatchStmt
CXXTryStmt
CXXForRangeStmt
SEHTryStmt
SEHExceptStmt
SEHFinallyStmt
MSAsmStmt
NullStmt
DeclStmt
OMPParallelDirective
OMPSimdDirective
OMPForDirective
OMPSectionsDirective
OMPSectionDirective
OMPSingleDirective
OMPParallelForDirective
OMPParallelSectionsDirective
OMPTaskDirective
OMPMasterDirective
OMPCriticalDirective
OMPTaskyieldDirective
OMPBarrierDirective
OMPTaskwaitDirective
OMPFlushDirective
SEHLeaveStmt
OMPOrderedDirective
OMPAtomicDirective
OMPForSimdDirective
OMPParallelForSimdDirective
OMPTargetDirective
OMPTeamsDirective
OMPTaskgroupDirective
OMPCancellationPointDirective
OMPCancelDirective
OMPTargetDataDirective
OMPTaskLoopDirective
OMPTaskLoopSimdDirective
OMPDistributeDirective
OMPTargetEnterDataDirective
OMPTargetExitDataDirective
OMPTargetParallelDirective
OMPTargetParallelForDirective
OMPTargetUpdateDirective
OMPDistributeParallelForDirective
OMPDistributeParallelForSimdDirective
OMPDistributeSimdDirective
OMPTargetParallelForSimdDirective
OMPTargetSimdDirective
OMPTeamsDistributeDirective
OMPTeamsDistributeSimdDirective
OMPTeamsDistributeParallelForSimdDirective
OMPTeamsDistributeParallelForDirective
OMPTargetTeamsDirective
OMPTargetTeamsDistributeDirective
OMPTargetTeamsDistributeParallelForDirective
OMPTargetTeamsDistributeParallelForSimdDirective
OMPTargetTeamsDistributeSimdDirective
BuiltinBitCastExpr
OMPMasterTaskLoopDirective
OMPParallelMasterTaskLoopDirective
OMPMasterTaskLoopSimdDirective
OMPParallelMasterTaskLoopSimdDirective
OMPParallelMasterDirective
OMPDepobjDirective
OMPScanDirective
OMPTileDirective
OMPCanonicalLoop
OMPInteropDirective
OMPDispatchDirective
OMPMaskedDirective
OMPUnrollDirective
OMPMetaDirective
OMPGenericLoopDirective
OMPTeamsGenericLoopDirective
OMPTargetTeamsGenericLoopDirective
OMPParallelGenericLoopDirective
OMPTargetParallelGenericLoopDirective
OMPParallelMaskedDirective
OMPMaskedTaskLoopDirective
OMPMaskedTaskLoopSimdDirective
OMPParallelMaskedTaskLoopDirective
OMPParallelMaskedTaskLoopSimdDirective
OMPErrorDirective
OMPScopeDirective
OMPReverseDirective
OMPInterchangeDirective
OMPAssumeDirective
OMPStripeDirective
OpenACCComputeConstruct
OpenACCLoopConstruct
OpenACCCombinedConstruct
OpenACCDataConstruct
OpenACCEnterDataConstruct
OpenACCExitDataConstruct
OpenACCHostDataConstruct
OpenACCWaitConstruct
OpenACCInitConstruct
OpenACCShutdownConstruct
OpenACCSetConstruct
OpenACCUpdateConstruct
OpenACCAtomicConstruct
OpenACCCacheConstruct
MacroDefinition
TranslationUnit
PreprocessingDirective
UnexposedAttr
IBActionAttr
IBOutletAttr
IBOutletCollectionAttr
CXXFinalAttr
CXXOverrideAttr
AnnotateAttr
AsmLabelAttr
PackedAttr
PureAttr
ConstAttr
NoDuplicateAttr
CUDAConstantAttr
CUDADeviceAttr
CUDAGlobalAttr
CUDAHostAttr
CUDASharedAttr
VisibilityAttr
DLLExport
DLLImport
NSReturnsRetained
NSReturnsNotRetained
NSReturnsAutoreleased
NSConsumesSelf
NSConsumed
ObjCException
ObjCNSObject
ObjCIndependentClass
ObjCPreciseLifetime
ObjCReturnsInnerPointer
ObjCRequiresSuper
ObjCRootClass
ObjCSubclassingRestricted
ObjCExplicitProtocolImpl
ObjCDesignatedInitializer
ObjCRuntimeVisible
ObjCBoxable
FlagEnum
ConvergentAttr
WarnUnusedAttr
WarnUnusedResultAttr
AlignedAttr
FirstDecl
LastDecl
LastExtraDecl
FirstExtraDecl
FirstRef
LastRef
FirstInvalid
LastInvalid
FirstExpr
LastPreprocessing
FirstPreprocessing
LastExpr
FirstStmt
LastStmt
FirstAttr
LastAttr
:: enum
Invalid
Unexposed
Void
Bool
Char_U
UChar
Char16
Char32
UShort
UInt
ULong
ULongLong
UInt128
Char_S
SChar
WChar
Short
Int
Long
LongLong
Int128
Float
Double
LongDouble
NullPtr
Overload
Dependent
ObjCId
ObjCClass
ObjCSel
Float128
Half
Float16
ShortAccum
Accum
LongAccum
UShortAccum
UAccum
ULongAccum
BFloat16
Ibm128
HLSLInlineSpirv
HLSLAttributedResource
Complex
Pointer
BlockPointer
LValueReference
RValueReference
Record
Enum
Typedef
ObjCInterface
ObjCObjectPointer
FunctionNoProto
FunctionProto
ConstantArray
Vector
IncompleteArray
VariableArray
DependentSizedArray
MemberPointer
Auto
Elaborated
Pipe
OCLImage1dRO
OCLImage1dArrayRO
OCLImage1dBufferRO
OCLImage2dRO
OCLImage2dArrayRO
OCLImage2dDepthRO
OCLImage2dArrayDepthRO
OCLImage2dMSAARO
OCLImage2dArrayMSAARO
OCLImage2dMSAADepthRO
OCLImage2dArrayMSAADepthRO
OCLImage3dRO
OCLImage1dWO
OCLImage1dArrayWO
OCLImage1dBufferWO
OCLImage2dWO
OCLImage2dArrayWO
OCLImage2dDepthWO
OCLImage2dArrayDepthWO
OCLImage2dMSAAWO
OCLImage2dArrayMSAAWO
OCLImage2dMSAADepthWO
OCLImage2dArrayMSAADepthWO
OCLImage3dWO
OCLImage1dRW
OCLImage1dArrayRW
OCLImage1dBufferRW
OCLImage2dRW
OCLImage2dArrayRW
OCLImage2dDepthRW
OCLImage2dArrayDepthRW
OCLImage2dMSAARW
OCLImage2dArrayMSAARW
OCLImage2dMSAADepthRW
OCLImage2dArrayMSAADepthRW
OCLImage3dRW
OCLSampler
OCLEvent
OCLQueue
OCLReserveID
ObjCObject
ObjCTypeParam
Attributed
OCLIntelSubgroupAVCMcePayload
OCLIntelSubgroupAVCImePayload
OCLIntelSubgroupAVCRefPayload
OCLIntelSubgroupAVCSicPayload
OCLIntelSubgroupAVCMceResult
OCLIntelSubgroupAVCImeResult
OCLIntelSubgroupAVCRefResult
OCLIntelSubgroupAVCSicResult
OCLIntelSubgroupAVCImeResultSingleReferenceStreamout
OCLIntelSubgroupAVCImeResultDualReferenceStreamout
OCLIntelSubgroupAVCImeSingleReferenceStreamin
OCLIntelSubgroupAVCImeDualReferenceStreamin
OCLIntelSubgroupAVCImeResultSingleRefStreamout
OCLIntelSubgroupAVCImeResultDualRefStreamout
OCLIntelSubgroupAVCImeSingleRefStreamin
OCLIntelSubgroupAVCImeDualRefStreamin
ExtVector
Atomic
BTFTagAttributed
HLSLResource
FirstBuiltin
LastBuiltin
:: enum
Success
Failure
Crashed
InvalidArguments
ASTReadError
:: struct
ptr_data: [2] *void
begin_int_data: u32
end_int_data: u32
:: struct
Size: u32
ThreadBackgroundPriorityForIndexing: u8
ThreadBackgroundPriorityForEditing: u8
__bitfield: u16
PreambleStoragePath: *u8
InvocationEmissionPath: *u8
:: enum
Invalid
PtrMemD
PtrMemI
Mul
Div
Rem
Add
Sub
Shl
Shr
Cmp
LT
GT
LE
GE
EQ
NE
And
Xor
Or
LAnd
LOr
Assign
MulAssign
DivAssign
RemAssign
AddAssign
SubAssign
ShlAssign
ShrAssign
AndAssign
XorAssign
OrAssign
Comma
Last
:: enum
Default
C
X86StdCall
X86FastCall
X86ThisCall
X86Pascal
AAPCS
AAPCS_VFP
X86RegCall
IntelOclBicc
Win64
X86_64Win64
X86_64SysV
X86VectorCall
Swift
PreserveMost
PreserveAll
AArch64VectorCall
SwiftAsync
AArch64SVEPCS
M68kRTD
PreserveNone
RISCVVectorCall
RISCVVLSCall_32
RISCVVLSCall_64
RISCVVLSCall_128
RISCVVLSCall_256
RISCVVLSCall_512
RISCVVLSCall_1024
RISCVVLSCall_2048
RISCVVLSCall_4096
RISCVVLSCall_8192
RISCVVLSCall_16384
RISCVVLSCall_32768
RISCVVLSCall_65536
Invalid
Unexposed
:: enum_flags
IncludeMacros
IncludeCodePatterns
IncludeBriefComments
SkipPreamble
IncludeCompletionsWithFixIts
:: enum
Optional
TypedText
Text
Placeholder
Informative
CurrentParameter
LeftParen
RightParen
LeftBracket
RightBracket
LeftBrace
RightBrace
LeftAngle
RightAngle
Comma
ResultType
Colon
SemiColon
Equal
HorizontalSpace
VerticalSpace
:: enum_flags
Unexposed
AnyType
AnyValue
ObjCObjectValue
ObjCSelectorValue
CXXClassTypeValue
DotMemberAccess
ArrowMemberAccess
ObjCPropertyAccess
EnumTag
UnionTag
StructTag
ClassTag
Namespace
NestedNameSpecifier
ObjCInterface
ObjCProtocol
ObjCCategory
ObjCInstanceMessage
ObjCClassMessage
ObjCSelectorName
MacroName
NaturalLanguage
IncludedFile
Unknown
:: enum
None
ThreadBackgroundPriorityForIndexing
ThreadBackgroundPriorityForEditing
ThreadBackgroundPriorityForAll
:: enum
Unexposed
Typedef
Function
Variable
Field
EnumConstant
ObjCClass
ObjCProtocol
ObjCCategory
ObjCInstanceMethod
ObjCClassMethod
ObjCProperty
ObjCIvar
Enum
Struct
Union
CXXClass
CXXNamespace
CXXNamespaceAlias
CXXStaticVariable
CXXStaticMethod
CXXInstanceMethod
CXXConstructor
CXXDestructor
CXXConversionFunction
CXXTypeAlias
CXXInterface
CXXConcept
:: enum
None
SuppressRedundantRefs
IndexFunctionLocalSymbols
IndexImplicitTemplateInstantiations
SuppressWarnings
SkipParsedBodiesInSession
:: enum
noattr
readonly
getter
assign
readwrite
retain
copy
nonatomic
setter
atomic
weak
strong
unsafe_unretained
class
:: enum
Indentation
SuppressSpecifiers
SuppressTagKeyword
IncludeTagDefinition
SuppressScope
SuppressUnwrittenScope
SuppressInitializers
ConstantArraySizeAsWritten
AnonymousTagLocations
SuppressStrongLifetime
SuppressLifetimeQualifiers
SuppressTemplateArgsInCXXConstructors
Bool
Restrict
Alignof
UnderscoreAlignof
UseVoidForZeroParams
TerseOutput
PolishForDeclaration
Half
MSWChar
IncludeNewlines
MSVCFormatting
ConstantsAsWritten
SuppressImplicitBase
FullyQualifiedName
LastProperty
:: enum
None
Declaration
Definition
Reference
Read
Write
Call
Dynamic
AddressOf
Implicit
:: enum
AST
Identifiers
Selectors
GlobalCompletionResults
SourceManagerContentCache
AST_SideTables
SourceManager_Membuffer_Malloc
SourceManager_Membuffer_MMap
ExternalASTSource_Membuffer_Malloc
ExternalASTSource_Membuffer_MMap
Preprocessor
PreprocessingRecord
SourceManager_DataStructures
Preprocessor_HeaderSearch
MEMORY_IN_BYTES_BEGIN
MEMORY_IN_BYTES_END
First
Last
:: enum_flags
None
DetailedPreprocessingRecord
Incomplete
PrecompiledPreamble
CacheCompletionResults
ForSerialization
CXXChainedPCH
SkipFunctionBodies
IncludeBriefCommentsInCodeCompletion
CreatePreambleOnFirstParse
KeepGoing
SingleFileParse
LimitSkipFunctionBodiesToPreamble
IncludeAttributedTypes
VisitImplicitAttributes
IgnoreNonErrorsFromIncludedFiles
RetainExcludedConditionalBlocks
:: enum
Invalid
PostInc
PostDec
PreInc
PreDec
AddrOf
Deref
Plus
Minus
Not
LNot
Real
Imag
Extension
Coawait
:: enum
Invalid
PtrMemD
PtrMemI
Mul
Div
Rem
Add
Sub
Shl
Shr
Cmp
LT
GT
LE
GE
EQ
NE
And
Xor
Or
LAnd
LOr
Assign
MulAssign
DivAssign
RemAssign
AddAssign
SubAssign
ShlAssign
ShrAssign
AndAssign
XorAssign
OrAssign
Comma
LAST
:: struct
abortQuery: #type (client_data: CXClientData, reserved: *void) -> s32 #c_call
diagnostic: #type (client_data: CXClientData, unknown0: CXDiagnosticSet, reserved: *void) -> void #c_call
enteredMainFile: #type (client_data: CXClientData, mainFile: CXFile, reserved: *void) -> CXIdxClientFile #c_call
ppIncludedFile: #type (client_data: CXClientData, unknown0: *CXIdxIncludedFileInfo) -> CXIdxClientFile #c_call
importedASTFile: #type (client_data: CXClientData, unknown0: *CXIdxImportedASTFileInfo) -> CXIdxClientASTFile #c_call
startedTranslationUnit: #type (client_data: CXClientData, reserved: *void) -> CXIdxClientContainer #c_call
indexDeclaration: #type (client_data: CXClientData, unknown0: *CXIdxDeclInfo) -> void #c_call
indexEntityReference: #type (client_data: CXClientData, unknown0: *CXIdxEntityRefInfo) -> void #c_call
:: struct
_expression: Expression
literal_kind: enum int { NULL :: 0; INTEGER :: 1; UNSIGNED_INTEGER :: 2; FLOAT :: 3; STRING :: 4; RAW_CPP_TOKENS :: 5; ENUM :: 6; MACRO :: 7; IDENTIFIER :: 8; }
raw_value: string
template_instantiation_params: [..] *Expression
location: Location
:: struct
_expression: Expression
location: Location
name: string
output_name: string
outputted_jai_name: string
type: *CType
expression: *Expression
parent: *Declaration
should_unwrap: bool
bitfield_width: := -1
bit_offset_in_parent: := -1
field_alignment: := 0
explicit_field_alignment: := 0
macro_value_result: enum { NEEDS_CHECKING; KEEP; DISCARD; }
storage_class: CX_StorageClass
decl_flags: Declaration_Flags
using_except: string
comment: Comment
library: *Library_Info
foreign_name: string
size_condition_type: *CType
:: struct
vtable: [..] *Function
vtable_struct: *Struct
vtable_pointer_declaration: *Declaration
vtable_parent: *Struct
vtable_parent_info: *Struct_Extra_Info
vtable_parent_declaration: *Declaration
padding_declaration: *Declaration
largest_natural_alignment: int
struct_alignment: int
has_field: bool
has_nonzero_sized_field: bool
explicit_layout: bool
inherits_from_template: bool
modified_declarations: [..] *Declaration
all_scope_declarations: [..] *Declaration
referenced_type_names: [..] string
raw_struct: *Struct
:: struct
declaration: Declaration
deleting_foreign_name: string
base_foreign_name: string
flags: Function_Flags
:: struct

Single canonical storage, from the public type inventory.

global_scope: Block
pointer_size: s64
anon_declarations: [..] *Declaration
type_def_void: *CType
type_def_bool: *CType
type_def_char: *CType
type_def_u8: *CType
type_def_u16: *CType
type_def_u32: *CType
type_def_u64: *CType
type_def_u128: *CType
type_def_s8: *CType
type_def_s16: *CType
type_def_s32: *CType
type_def_s64: *CType
type_def_s128: *CType
type_def_float32: *CType
type_def_float64: *CType
type_def_pointer_to_void: *CType
type_def_ptr_void: *CType
type_def_objc_class: *CType
type_def_objc_selector: *CType
type_def_objc_block_pointer: *CType
type_def_objc_id: *CType
type_def_jai_string: *CType
type_def_type: *CType
type_def_msvc_destructor_flags: *CType
declarations_by_cursor: Table(CXCursor, *Declaration, get_hash_cxcursor, compare_cxcursors)
macro_token_replacements: [..] Replacement
enum_macros: [..] *Enum
macros_converted_to_enum_values: Table(string, *Enum)
unwrapped_typedefs: Table(string, *Typedef)
extern_declarations: [..] *Declaration
unique_objc_selectors: [..] string
libraries: [..] *Library_Info
com_uuids: [..] ComUuid
pending_bitfields: [..] *Bitfield
structs_to_check: [..] *Struct
flattened_global_scope_members: [] *Declaration
declarations_for_global_scope: [..] *Declaration
int128_was_referenced: bool
generated_printf_wrapper: bool
tab_depth: := 0
template_depth: := 0
clang_index: CXIndex
translation_unit: CXTranslationUnit
tokens_to_free: [..] Token_Info
filenames: Table(CXFile, string)
counts: struct { ignored_system_declarations: u32; stripped: u32; functions: u32; structs: u32; enums: u32; }
:: struct
os: Operating_System_Tag
cpu: CPU_Tag
full_path: string
symbol_names: [] string
:: struct
os: := TARGET_OS
cpu: := CPU
library_search_paths: [..] string
libraries: [..] Library
system_library_search_paths: [..] string
system_libraries: [..] Library
libnames: [..] string
libpaths: [..] string
system_library_names: [..] string
system_library_paths: [..] string
static_library_suffix: string
shared_library_suffix: string
system_include_paths: [..] string
include_paths: [..] string
source_files: [..] string
extra_clang_arguments: [..] string
path_fragments_to_treat_as_non_system_paths: [..] string
system_types_to_include: [..] string
log_ignored_system_declarations: := false
flatten_namespaces: [..] string
default_namespace_flags: Declaration_Flags
strip_prefixes: [..] string
generate_enums_from_macros_with_prefixes: [..] string
convert_macro_value_to_enum_callback: #type (decl: *Declaration) -> enum_name : string
strip_enum_prefixes: := true
auto_detect_enum_prefixes: := true
enum_prefix_delimiter: := "_"
alias_original_enum_names: := true
strip_enum_values_with_suffix: string
strip_enum_value_prefixes: [..][2] string
typedef_prefixes_to_unwrap: [..] string
macro_prefixes_to_unwrap: [..] string
move_struct_functions_to_global_scope: := false
omit_global_declarations: := false
strip_flags: := Strip_Flags.FUNCTIONS_WITH_VALIST | .SYMBOLS_WITH_UNKNOWN_FOREIGN_LIBS
log_stripped_declarations: := true
try_to_preserve_comments: := true
generate_library_declarations: := true
generated_library_path_prefix: := ""
add_generator_command: := true
header: := ""
footer: := ""
c_enum_emulation: := false
prepare_all_structs_for_inheritance: := false
generate_compile_time_struct_checks: := true
generate_printf_wrappers: := true
generate_c_style_api_for_vtable: := true
generate_vtable_helpers: := true
generate_bitfield_helpers: := true
add_overloaded_const_and_ref_comments: := true
add_placeholders_for_unresolved_types: := true
mimic_spacing_flags: := Mimic_Spacing_Flags.ALL
get_func_args_for_printing: Get_Function_Arguments_For_Printing_Func
will_print_bindings: #type ()
visitor_data: *void
log_unsupported: := false
:: struct
filename: string
identifier: string
:: struct
identifier: string
full_path: string
is_shared_library: bool
is_system_library: bool
symbol_names: [] string
flags: Flags

Constants#

:: string.["cast", "context", "false", "is_constant", "null", "remove", "true", "type_info", "xx", "interface", "Any", "bool", "float", "float32", "float64", "int" ...
:: string.["int8_t", "uint8_t", "int16_t", "uint16_t", "int32_t", "uint32_t", "int64_t", "uint64_t", "intptr_t", "size_t", "ssize_t", "__ssize_t", "__size_t", "off ...