Svyatoslav Scherbina
fd35ccbf2e
Represent void* as CValuesRef<*>?
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
17ccd3ee02
Minorly rework CValuesRef to make it more universal when subclassing
...
Allow `getPointer` to register custom disposers with `defer`
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
a3721f857c
Optimize Arena and memScoped
...
Also do minor refactoring.
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
2217be4003
Add defer support to memScope
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
9609a10e09
Improve StableObjPtr
...
* Rename to StableRef
* Make it more typed
* Provide more idiomatic and convenient methods
* Share more code between JVM and Native
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
d8ed1f4414
Hide nativeMemUtils and pointerSize
2017-09-26 09:50:42 +03:00
Svyatoslav Scherbina
79455c5161
Support interop modularity
...
* Add list of included headers into the manifest
* Implement importing "foreign" type declarations
* Implement forward declarations more natively in the compiler
* Represent Objective-C categories as Kotlin extension methods and
properties
Also:
* Do some refactoring in stub generation
* Call bridges directly in stubs for Objective-C properties
2017-09-14 16:47:26 +03:00
Alexander Gorshenev
6187726ee7
Added libraryPaths def file property.
2017-09-13 12:23:49 +03:00
Alexander Gorshenev
820a009163
Pass the list of static libraries from the cinterop tool to the compiler.
2017-09-13 12:23:49 +03:00
Alexander Gorshenev
eb0e584cb4
Allow linking static libraries from klibs.
...
Resolve static libraries in cinterop tool.
2017-09-13 12:23:49 +03:00
Svyatoslav Scherbina
4e285a5ef4
Implement equals, hashCode and toString for Objective-C objects
2017-09-06 23:57:19 +03:00
Svyatoslav Scherbina
6b042a5510
Disable passing exceptions from Objective-C to Kotlin
...
since they can't be correctly handled yet.
2017-09-06 23:57:19 +03:00
Svyatoslav Scherbina
324f54ba1e
Implement @ExportObjCClass
2017-09-06 23:57:19 +03:00
Svyatoslav Scherbina
07f26dc1df
Rework Objective-C constructors and support 'initBy' intrinsic
2017-09-06 23:57:19 +03:00
Svyatoslav Scherbina
5a7e3e20b4
Support exposing Kotlin methods as Objective-C actions and outlets
2017-09-06 23:57:19 +03:00
Svyatoslav Scherbina
2f30c15b45
Workaround interop with iOS system frameworks
2017-09-06 23:57:19 +03:00
Nikolay Igotti
be58d2ee34
Fix typedefs to unsupported types
2017-09-05 18:43:55 +03:00
Nikolay Igotti
43a975ad73
Ensure linker from sysroot is used ( #834 )
2017-09-05 15:35:23 +03:00
Igor Chevdar
19461d8143
Removed/cached some reflection calls
2017-08-31 15:34:37 +03:00
Igor Chevdar
2b00850164
Made NativePointed an abstract class instead of interface
2017-08-31 15:34:37 +03:00
Nikolay Igotti
f74265126e
Fix performance bug, review feedback on indexer changes ( #818 )
2017-08-29 16:12:44 +03:00
Nikolay Igotti
2aa077e542
Generate Windows platform headers
2017-08-29 14:07:26 +03:00
Nikolay Igotti
7d72beb27c
Improve memory tracing, fix 32-bit platforms ( #815 )
2017-08-29 10:21:47 +03:00
Nikolay Igotti
87a4fa9380
Platform libs definitions for Android, small interop tweaks. ( #804 )
2017-08-23 16:47:19 +03:00
Ilya Matveev
60ed6f6871
dependencies: Move dependency downloader into shared project
2017-08-23 19:42:06 +07:00
Nikolay Igotti
87f2bed5c8
Move Kotlin version to 1.1.4, fix some warnings. ( #802 )
2017-08-22 14:50:05 +03:00
Svyatoslav Scherbina
99dd7227dc
Support Boolean in interop varargs and function pointers invocation
2017-08-18 17:45:41 +03:00
Svyatoslav Scherbina
5586d29764
Add basic support for calling C function pointers
...
Fix #739
2017-08-18 17:45:41 +03:00
Vasily Levchenko
e81b1388d5
[cinterop][objC][debug] warkarond foe fail of debug build
2017-08-17 14:00:18 +03:00
Svyatoslav Scherbina
5c3e8d63d4
Support bit fields in interop
...
Fix #728
2017-08-16 15:03:58 +03:00
Svyatoslav Scherbina
ce27695290
Support anonymous struct and union fields in interop
...
Fix #729
2017-08-16 15:03:58 +03:00
Svyatoslav Scherbina
c81ceed7c6
Support builtin C _Bool type in interop
...
Fix #756
2017-08-16 15:03:58 +03:00
Svyatoslav Scherbina
d3185e3e19
Implement very basic Objective-C interop
...
Also refactor StubGenerator
2017-08-16 10:04:23 +03:00
Svyatoslav Scherbina
a38835cb46
Extend libclang API
2017-08-16 10:04:23 +03:00
Svyatoslav Scherbina
8bd0bb63c9
Remove obsolete workarounds for *va_list* in interop
...
Fix #740
2017-08-16 10:04:23 +03:00
Svyatoslav Scherbina
0f20feb544
Fix name clashes between struct and typedef in interop
2017-08-16 10:04:23 +03:00
Svyatoslav Scherbina
cf8fea5711
Improve interop enum generation
...
Represent equal constants as the main one and its aliases.
2017-08-16 10:04:23 +03:00
Robert Hencke
72ca603d71
Reduce boilerplate for applying kotlin-gradle-plugin.
2017-08-07 17:25:52 +07:00
Nikolay Igotti
06e31939dd
WebAssembly effort ( #721 )
2017-07-14 16:44:46 +03:00
Alexander Gorshenev
55c4966203
Moved clang flags out of the root build.gardle.
...
Collected clang args in ClangArgs.kt
Switched dependencies/build.gradle to KonanTarget.
Introduced KonanProperties to take care of target specific properties.
2017-07-12 18:31:09 +03:00
Alexander Gorshenev
5effdcb1d2
Pass linkerOpts from .def to klib manifest.
2017-07-04 17:58:30 +03:00
Nikolay Igotti
1ad50bc33f
Workers draft ( #655 )
2017-06-21 11:26:09 +03:00
Nikolay Igotti
1b56b8912b
Fix size for wcstr
2017-06-07 14:27:56 +03:00
Nikolay Igotti
2d6d4b15e6
Support for wchar, minor opts in interop runtime ( #641 )
2017-06-07 14:23:35 +03:00
Nikolay Igotti
dd81d529ee
Support for Android ARM64 on Mac ( #627 )
2017-06-02 15:05:15 +03:00
Svyatoslav Scherbina
d6b8b4fb0f
Add basic support for Windows with mingw-w64
2017-05-29 19:13:55 +03:00
Svyatoslav Scherbina
d7adbfd221
Reconfigure interop with LLVM
...
Use more strict linking.
Also remove unused components.
2017-05-29 19:13:55 +03:00
Svyatoslav Scherbina
23f1df015d
Update libclang interop stubs
...
Apply filters to exclude platform-dependent declarations.
2017-05-29 19:13:55 +03:00
Nikolay Igotti
ff8bce79d5
Uniform compiler/linker options treatment ( #614 )
2017-05-29 15:37:15 +03:00
Nikolay Igotti
42197a2bec
Android NDK support and build system refactoring ( #585 )
2017-05-24 00:20:19 +03:00