diff --git a/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/clang.kt b/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/clang.kt index ec3120cd1a5..add2a1f37ca 100644 --- a/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/clang.kt +++ b/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/clang.kt @@ -3051,7 +3051,7 @@ val CINDEX_VERSION_MINOR: Int = 35 val CINDEX_VERSION: Int = 35 @CNaturalStruct("data", "private_flags") -class CXString(override val rawPtr: NativePtr) : CStructVar() { +class CXString(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3066,7 +3066,7 @@ class CXString(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("Strings", "Count") -class CXStringSet(override val rawPtr: NativePtr) : CStructVar() { +class CXStringSet(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3080,14 +3080,14 @@ class CXStringSet(override val rawPtr: NativePtr) : CStructVar() { } -class CXVirtualFileOverlayImpl(override val rawPtr: NativePtr) : COpaque +class CXVirtualFileOverlayImpl(rawPtr: NativePtr) : COpaque(rawPtr) -class CXModuleMapDescriptorImpl(override val rawPtr: NativePtr) : COpaque +class CXModuleMapDescriptorImpl(rawPtr: NativePtr) : COpaque(rawPtr) -class CXTranslationUnitImpl(override val rawPtr: NativePtr) : COpaque +class CXTranslationUnitImpl(rawPtr: NativePtr) : COpaque(rawPtr) @CNaturalStruct("Filename", "Contents", "Length") -class CXUnsavedFile(override val rawPtr: NativePtr) : CStructVar() { +class CXUnsavedFile(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3106,7 +3106,7 @@ class CXUnsavedFile(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("Major", "Minor", "Subminor") -class CXVersion(override val rawPtr: NativePtr) : CStructVar() { +class CXVersion(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(12, 4) @@ -3125,7 +3125,7 @@ class CXVersion(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("data") -class CXFileUniqueID(override val rawPtr: NativePtr) : CStructVar() { +class CXFileUniqueID(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3136,7 +3136,7 @@ class CXFileUniqueID(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("ptr_data", "int_data") -class CXSourceLocation(override val rawPtr: NativePtr) : CStructVar() { +class CXSourceLocation(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3151,7 +3151,7 @@ class CXSourceLocation(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("ptr_data", "begin_int_data", "end_int_data") -class CXSourceRange(override val rawPtr: NativePtr) : CStructVar() { +class CXSourceRange(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3170,7 +3170,7 @@ class CXSourceRange(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("count", "ranges") -class CXSourceRangeList(override val rawPtr: NativePtr) : CStructVar() { +class CXSourceRangeList(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3185,7 +3185,7 @@ class CXSourceRangeList(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("kind", "amount") -class CXTUResourceUsageEntry(override val rawPtr: NativePtr) : CStructVar() { +class CXTUResourceUsageEntry(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3200,7 +3200,7 @@ class CXTUResourceUsageEntry(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("data", "numEntries", "entries") -class CXTUResourceUsage(override val rawPtr: NativePtr) : CStructVar() { +class CXTUResourceUsage(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3219,7 +3219,7 @@ class CXTUResourceUsage(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("kind", "xdata", "data") -class CXCursor(override val rawPtr: NativePtr) : CStructVar() { +class CXCursor(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(32, 8) @@ -3238,7 +3238,7 @@ class CXCursor(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("Platform", "Introduced", "Deprecated", "Obsoleted", "Unavailable", "Message") -class CXPlatformAvailability(override val rawPtr: NativePtr) : CStructVar() { +class CXPlatformAvailability(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(72, 8) @@ -3263,10 +3263,10 @@ class CXPlatformAvailability(override val rawPtr: NativePtr) : CStructVar() { } -class CXCursorSetImpl(override val rawPtr: NativePtr) : COpaque +class CXCursorSetImpl(rawPtr: NativePtr) : COpaque(rawPtr) @CNaturalStruct("kind", "data") -class CXType(override val rawPtr: NativePtr) : CStructVar() { +class CXType(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3281,7 +3281,7 @@ class CXType(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("int_data", "ptr_data") -class CXToken(override val rawPtr: NativePtr) : CStructVar() { +class CXToken(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3296,7 +3296,7 @@ class CXToken(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("CursorKind", "CompletionString") -class CXCompletionResult(override val rawPtr: NativePtr) : CStructVar() { +class CXCompletionResult(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3311,7 +3311,7 @@ class CXCompletionResult(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("Results", "NumResults") -class CXCodeCompleteResults(override val rawPtr: NativePtr) : CStructVar() { +class CXCodeCompleteResults(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3326,7 +3326,7 @@ class CXCodeCompleteResults(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("context", "visit") -class CXCursorAndRangeVisitor(override val rawPtr: NativePtr) : CStructVar() { +class CXCursorAndRangeVisitor(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3341,7 +3341,7 @@ class CXCursorAndRangeVisitor(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("ptr_data", "int_data") -class CXIdxLoc(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxLoc(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3356,7 +3356,7 @@ class CXIdxLoc(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("hashLoc", "filename", "file", "isImport", "isAngled", "isModuleImport") -class CXIdxIncludedFileInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxIncludedFileInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(56, 8) @@ -3386,7 +3386,7 @@ class CXIdxIncludedFileInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("file", "module", "loc", "isImplicit") -class CXIdxImportedASTFileInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxImportedASTFileInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(48, 8) @@ -3408,7 +3408,7 @@ class CXIdxImportedASTFileInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("kind", "cursor", "loc") -class CXIdxAttrInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxAttrInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(64, 8) @@ -3425,7 +3425,7 @@ class CXIdxAttrInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("kind", "templateKind", "lang", "name", "USR", "cursor", "attributes", "numAttributes") -class CXIdxEntityInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxEntityInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(80, 8) @@ -3463,7 +3463,7 @@ class CXIdxEntityInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("cursor") -class CXIdxContainerInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxContainerInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(32, 8) @@ -3473,7 +3473,7 @@ class CXIdxContainerInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("attrInfo", "objcClass", "classCursor", "classLoc") -class CXIdxIBOutletCollectionAttrInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxIBOutletCollectionAttrInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(72, 8) @@ -3494,7 +3494,7 @@ class CXIdxIBOutletCollectionAttrInfo(override val rawPtr: NativePtr) : CStructV } @CNaturalStruct("entityInfo", "cursor", "loc", "semanticContainer", "lexicalContainer", "isRedeclaration", "isDefinition", "isContainer", "declAsContainer", "isImplicit", "attributes", "numAttributes", "flags") -class CXIdxDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(128, 8) @@ -3551,7 +3551,7 @@ class CXIdxDeclInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("declInfo", "kind") -class CXIdxObjCContainerDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCContainerDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3566,7 +3566,7 @@ class CXIdxObjCContainerDeclInfo(override val rawPtr: NativePtr) : CStructVar() } @CNaturalStruct("base", "cursor", "loc") -class CXIdxBaseClassInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxBaseClassInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(64, 8) @@ -3583,7 +3583,7 @@ class CXIdxBaseClassInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("protocol", "cursor", "loc") -class CXIdxObjCProtocolRefInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCProtocolRefInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(64, 8) @@ -3600,7 +3600,7 @@ class CXIdxObjCProtocolRefInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("protocols", "numProtocols") -class CXIdxObjCProtocolRefListInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCProtocolRefListInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(16, 8) @@ -3615,7 +3615,7 @@ class CXIdxObjCProtocolRefListInfo(override val rawPtr: NativePtr) : CStructVar( } @CNaturalStruct("containerInfo", "superInfo", "protocols") -class CXIdxObjCInterfaceDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCInterfaceDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3634,7 +3634,7 @@ class CXIdxObjCInterfaceDeclInfo(override val rawPtr: NativePtr) : CStructVar() } @CNaturalStruct("containerInfo", "objcClass", "classCursor", "classLoc", "protocols") -class CXIdxObjCCategoryDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCCategoryDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(80, 8) @@ -3659,7 +3659,7 @@ class CXIdxObjCCategoryDeclInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("declInfo", "getter", "setter") -class CXIdxObjCPropertyDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxObjCPropertyDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3678,7 +3678,7 @@ class CXIdxObjCPropertyDeclInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("declInfo", "bases", "numBases") -class CXIdxCXXClassDeclInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxCXXClassDeclInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(24, 8) @@ -3697,7 +3697,7 @@ class CXIdxCXXClassDeclInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("kind", "cursor", "loc", "referencedEntity", "parentEntity", "container") -class CXIdxEntityRefInfo(override val rawPtr: NativePtr) : CStructVar() { +class CXIdxEntityRefInfo(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(88, 8) @@ -3726,7 +3726,7 @@ class CXIdxEntityRefInfo(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("abortQuery", "diagnostic", "enteredMainFile", "ppIncludedFile", "importedASTFile", "startedTranslationUnit", "indexDeclaration", "indexEntityReference") -class IndexerCallbacks(override val rawPtr: NativePtr) : CStructVar() { +class IndexerCallbacks(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(64, 8) @@ -3765,7 +3765,7 @@ class IndexerCallbacks(override val rawPtr: NativePtr) : CStructVar() { } @CNaturalStruct("typeOpaquePtr") -class CXTypeAttributes(override val rawPtr: NativePtr) : CStructVar() { +class CXTypeAttributes(rawPtr: NativePtr) : CStructVar(rawPtr) { companion object : Type(8, 8) @@ -3787,7 +3787,7 @@ enum class CXErrorCode(override val value: Int) : CEnum { fun byValue(value: Int) = CXErrorCode.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXErrorCode get() = byValue(this.reinterpret().value) @@ -3806,7 +3806,7 @@ enum class CXAvailabilityKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXAvailabilityKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXAvailabilityKind get() = byValue(this.reinterpret().value) @@ -3834,7 +3834,7 @@ enum class CXDiagnosticSeverity(override val value: Int) : CEnum { fun byValue(value: Int) = CXDiagnosticSeverity.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXDiagnosticSeverity get() = byValue(this.reinterpret().value) @@ -3853,7 +3853,7 @@ enum class CXLoadDiag_Error(override val value: Int) : CEnum { fun byValue(value: Int) = CXLoadDiag_Error.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXLoadDiag_Error get() = byValue(this.reinterpret().value) @@ -3902,7 +3902,7 @@ enum class CXSaveError(override val value: Int) : CEnum { fun byValue(value: Int) = CXSaveError.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXSaveError get() = byValue(this.reinterpret().value) @@ -3941,7 +3941,7 @@ enum class CXTUResourceUsageKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXTUResourceUsageKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXTUResourceUsageKind get() = byValue(this.reinterpret().value) @@ -4177,7 +4177,7 @@ enum class CXCursorKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXCursorKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXCursorKind get() = byValue(this.reinterpret().value) @@ -4197,7 +4197,7 @@ enum class CXLinkageKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXLinkageKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXLinkageKind get() = byValue(this.reinterpret().value) @@ -4216,7 +4216,7 @@ enum class CXVisibilityKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXVisibilityKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXVisibilityKind get() = byValue(this.reinterpret().value) @@ -4235,7 +4235,7 @@ enum class CXLanguageKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXLanguageKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXLanguageKind get() = byValue(this.reinterpret().value) @@ -4304,7 +4304,7 @@ enum class CXTypeKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXTypeKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXTypeKind get() = byValue(this.reinterpret().value) @@ -4336,7 +4336,7 @@ enum class CXCallingConv(override val value: Int) : CEnum { fun byValue(value: Int) = CXCallingConv.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXCallingConv get() = byValue(this.reinterpret().value) @@ -4361,7 +4361,7 @@ enum class CXTemplateArgumentKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXTemplateArgumentKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXTemplateArgumentKind get() = byValue(this.reinterpret().value) @@ -4396,7 +4396,7 @@ enum class CX_CXXAccessSpecifier(override val value: Int) : CEnum { fun byValue(value: Int) = CX_CXXAccessSpecifier.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CX_CXXAccessSpecifier get() = byValue(this.reinterpret().value) @@ -4419,7 +4419,7 @@ enum class CX_StorageClass(override val value: Int) : CEnum { fun byValue(value: Int) = CX_StorageClass.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CX_StorageClass get() = byValue(this.reinterpret().value) @@ -4437,7 +4437,7 @@ enum class CXChildVisitResult(override val value: Int) : CEnum { fun byValue(value: Int) = CXChildVisitResult.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXChildVisitResult get() = byValue(this.reinterpret().value) @@ -4493,7 +4493,7 @@ enum class CXTokenKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXTokenKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXTokenKind get() = byValue(this.reinterpret().value) @@ -4529,7 +4529,7 @@ enum class CXCompletionChunkKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXCompletionChunkKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXCompletionChunkKind get() = byValue(this.reinterpret().value) @@ -4586,7 +4586,7 @@ enum class CXEvalResultKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXEvalResultKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXEvalResultKind get() = byValue(this.reinterpret().value) @@ -4603,7 +4603,7 @@ enum class CXVisitorResult(override val value: Int) : CEnum { fun byValue(value: Int) = CXVisitorResult.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXVisitorResult get() = byValue(this.reinterpret().value) @@ -4621,7 +4621,7 @@ enum class CXResult(override val value: Int) : CEnum { fun byValue(value: Int) = CXResult.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXResult get() = byValue(this.reinterpret().value) @@ -4663,7 +4663,7 @@ enum class CXIdxEntityKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXIdxEntityKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXIdxEntityKind get() = byValue(this.reinterpret().value) @@ -4733,7 +4733,7 @@ enum class CXNullabilityKind(override val value: Int) : CEnum { fun byValue(value: Int) = CXNullabilityKind.values().find { it.value == value }!! } - class Var(override val rawPtr: NativePtr) : CEnumVar() { + class Var(rawPtr: NativePtr) : CEnumVar(rawPtr) { companion object : Type(IntVar.size.toInt()) var value: CXNullabilityKind get() = byValue(this.reinterpret().value) diff --git a/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmCallbacks.kt b/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmCallbacks.kt index 6c0c733ee10..dbb96fac255 100644 --- a/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmCallbacks.kt +++ b/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmCallbacks.kt @@ -404,12 +404,12 @@ private fun loadCallbacksLibrary() { /** * Reference to `ffi_type` struct instance. */ -internal class ffi_type(override val rawPtr: NativePtr) : COpaque +internal class ffi_type(rawPtr: NativePtr) : COpaque(rawPtr) /** * Reference to `ffi_cif` struct instance. */ -internal class ffi_cif(override val rawPtr: NativePtr) : COpaque +internal class ffi_cif(rawPtr: NativePtr) : COpaque(rawPtr) private external fun ffiTypeVoid(): Long private external fun ffiTypeUInt8(): Long diff --git a/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmNativeMem.kt b/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmNativeMem.kt index d7b71f7352a..a4fbb1f979d 100644 --- a/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmNativeMem.kt +++ b/Interop/Runtime/src/jvm/kotlin/kotlinx/cinterop/JvmNativeMem.kt @@ -91,7 +91,7 @@ object nativeMemUtils { fun zeroMemory(dest: NativePointed, length: Int): Unit = unsafe.setMemory(dest.address, length.toLong(), 0) - internal class NativeAllocated(override val rawPtr: NativePtr) : NativePointed + internal class NativeAllocated(rawPtr: NativePtr) : NativePointed(rawPtr) fun alloc(size: Long, align: Int): NativePointed { val address = unsafe.allocateMemory( diff --git a/Interop/Runtime/src/main/kotlin/kotlinx/cinterop/Types.kt b/Interop/Runtime/src/main/kotlin/kotlinx/cinterop/Types.kt index 1833fc7f73d..88719d7c672 100644 --- a/Interop/Runtime/src/main/kotlin/kotlinx/cinterop/Types.kt +++ b/Interop/Runtime/src/main/kotlin/kotlinx/cinterop/Types.kt @@ -24,8 +24,9 @@ package kotlinx.cinterop * * TODO: the behavior of [equals], [hashCode] and [toString] differs on Native and JVM backends. */ -interface NativePointed { - val rawPtr: NativePtr +abstract class NativePointed(rawPtr: NativePtr) { + var rawPtr = rawPtr + internal set } // `null` value of `NativePointed?` is mapped to `nativeNullPtr`. @@ -47,7 +48,7 @@ inline fun NativePointed.reinterpret(): T = interpre /** * C data or code. */ -interface CPointed : NativePointed +abstract class CPointed(rawPtr: NativePtr) : NativePointed(rawPtr) /** * Represents a reference to (possibly empty) sequence of C values. @@ -187,7 +188,7 @@ fun Long.toCPointer(): CPointer? = interpretCPointer(nativeNul /** * The [CPointed] without any specified interpretation. */ -interface COpaque : CPointed // TODO: should it correspond to COpaquePointer? +abstract class COpaque(rawPtr: NativePtr) : CPointed(rawPtr) // TODO: should it correspond to COpaquePointer? /** * The pointer with an opaque type. @@ -205,7 +206,7 @@ typealias COpaquePointerVar = CPointerVarOf * The non-abstract subclasses should represent the (complete) C data type and thus specify size and alignment. * Each such subclass must have a companion object which is a [Type]. */ -interface CVariable : CPointed { +abstract class CVariable(rawPtr: NativePtr) : CPointed(rawPtr) { /** * The (complete) C data type. @@ -240,14 +241,14 @@ inline fun CStructVar.arrayMemberAt(offset: Long): CArra /** * The C struct-typed variable located in memory. */ -abstract class CStructVar : CVariable { +abstract class CStructVar(rawPtr: NativePtr) : CVariable(rawPtr) { open class Type(size: Long, align: Int) : CVariable.Type(size, align) } /** * The C primitive-typed variable located in memory. */ -sealed class CPrimitiveVar : CVariable { +sealed class CPrimitiveVar(rawPtr: NativePtr) : CVariable(rawPtr) { // aligning by size is obviously enough open class Type(size: Int) : CVariable.Type(size.toLong(), align = size) } @@ -255,43 +256,43 @@ sealed class CPrimitiveVar : CVariable { interface CEnum { val value: Number } -abstract class CEnumVar : CPrimitiveVar() +abstract class CEnumVar(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) // generics below are used for typedef support // these classes are not supposed to be used directly, instead the typealiases are provided. @Suppress("FINAL_UPPER_BOUND") -class BooleanVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class BooleanVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(1) } @Suppress("FINAL_UPPER_BOUND") -class ByteVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class ByteVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(1) } @Suppress("FINAL_UPPER_BOUND") -class ShortVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class ShortVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(2) } @Suppress("FINAL_UPPER_BOUND") -class IntVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class IntVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(4) } @Suppress("FINAL_UPPER_BOUND") -class LongVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class LongVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(8) } @Suppress("FINAL_UPPER_BOUND") -class FloatVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class FloatVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(4) } @Suppress("FINAL_UPPER_BOUND") -class DoubleVarOf(override val rawPtr: NativePtr) : CPrimitiveVar() { +class DoubleVarOf(rawPtr: NativePtr) : CPrimitiveVar(rawPtr) { companion object : Type(8) } @@ -350,7 +351,7 @@ var DoubleVarOf.value: T set(value) = nativeMemUtils.putDouble(this, value) -class CPointerVarOf>(override val rawPtr: NativePtr) : CVariable { +class CPointerVarOf>(rawPtr: NativePtr) : CVariable(rawPtr) { companion object : CVariable.Type(pointerSize.toLong(), pointerSize) } @@ -423,7 +424,7 @@ typealias CArrayPointerVar = CPointerVar /** * The C function. */ -class CFunction>(override val rawPtr: NativePtr) : CPointed +class CFunction>(rawPtr: NativePtr) : CPointed(rawPtr) /** * Returns a pointer to C function which calls given Kotlin *static* function. diff --git a/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/NativeMem.kt b/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/NativeMem.kt index 6f5773b3a2b..1871a912c7b 100644 --- a/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/NativeMem.kt +++ b/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/NativeMem.kt @@ -80,7 +80,7 @@ object nativeMemUtils { } } - private class NativeAllocated(override val rawPtr: NativePtr) : NativePointed + private class NativeAllocated(rawPtr: NativePtr) : NativePointed(rawPtr) fun alloc(size: Long, align: Int): NativePointed { val ptr = malloc(size, align) diff --git a/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/ObjectiveCImpl.kt b/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/ObjectiveCImpl.kt index bf6d15fa5e9..af4e8fa344e 100644 --- a/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/ObjectiveCImpl.kt +++ b/Interop/Runtime/src/native/kotlin/kotlinx/cinterop/ObjectiveCImpl.kt @@ -71,11 +71,11 @@ inline val ObjCObject?.rawPtr: NativePtr get() = if (this != null) { nativeNullPtr } -class ObjCObjectVar(override val rawPtr: NativePtr) : CVariable { +class ObjCObjectVar(rawPtr: NativePtr) : CVariable(rawPtr) { companion object : CVariable.Type(pointerSize.toLong(), pointerSize) } -class ObjCStringVarOf(override val rawPtr: NativePtr) : CVariable { +class ObjCStringVarOf(rawPtr: NativePtr) : CVariable(rawPtr) { companion object : CVariable.Type(pointerSize.toLong(), pointerSize) } diff --git a/Interop/StubGenerator/src/main/kotlin/org/jetbrains/kotlin/native/interop/gen/jvm/StubGenerator.kt b/Interop/StubGenerator/src/main/kotlin/org/jetbrains/kotlin/native/interop/gen/jvm/StubGenerator.kt index 752bd3f703c..dd1ba8e403b 100644 --- a/Interop/StubGenerator/src/main/kotlin/org/jetbrains/kotlin/native/interop/gen/jvm/StubGenerator.kt +++ b/Interop/StubGenerator/src/main/kotlin/org/jetbrains/kotlin/native/interop/gen/jvm/StubGenerator.kt @@ -262,7 +262,7 @@ class StubGenerator( } } - block("class ${decl.kotlinName.asSimpleName()}(override val rawPtr: NativePtr) : CStructVar()") { + block("class ${decl.kotlinName.asSimpleName()}(rawPtr: NativePtr) : CStructVar(rawPtr)") { out("") out("companion object : Type(${def.size}, ${def.align})") // FIXME: align out("") @@ -340,7 +340,7 @@ class StubGenerator( * Produces to [out] the definition of Kotlin class representing the reference to given forward (incomplete) struct. */ private fun generateForwardStruct(s: StructDecl) { - out("class ${s.kotlinName.asSimpleName()}(override val rawPtr: NativePtr) : COpaque") + out("class ${s.kotlinName.asSimpleName()}(rawPtr: NativePtr) : COpaque(rawPtr)") } private fun EnumConstant.isMoreCanonicalThan(other: EnumConstant): Boolean = with(other.name.toLowerCase()) { @@ -390,7 +390,7 @@ class StubGenerator( "${e.kotlinName.asSimpleName()}.values().find { it.value == value }!!") } out("") - block("class Var(override val rawPtr: NativePtr) : CEnumVar()") { + block("class Var(rawPtr: NativePtr) : CEnumVar(rawPtr)") { out("companion object : Type(${baseTypeMirror.pointedTypeName}.size.toInt())") out("var value: ${e.kotlinName.asSimpleName()}") out(" get() = byValue(this.reinterpret<${baseTypeMirror.pointedTypeName}>().value)")