Commit graph

231 commits

Author SHA1 Message Date
Joshua Suskalo
8e088c75b2
Fix bug where one too many indirections are used with pointer types 2024-10-03 15:37:03 -04:00
Joshua Suskalo
6ff882b85d
Update docstring to reflect address-of returning a long 2024-10-03 14:12:51 -04:00
Joshua Suskalo
f752a1592a
Optimize re-serializing deserialized functions 2024-10-03 11:12:37 -04:00
Joshua Suskalo
cce6c823f6
Implement memoization of upcall and downcall classes 2024-10-03 10:55:54 -04:00
Joshua Suskalo
bd7216a06e
Add null for implementing serdes 2024-10-02 16:26:24 -04:00
Joshua Suskalo
fd8d649f63
Fix bad usage of static fields as calls 2024-10-02 16:22:00 -04:00
Joshua Suskalo
2073f15767
WIP: Update documentation for arenas instead of sessions
This is a part of the push for completing coffi 1.0 for a release tested
against JDK 22 and newer.
2024-09-30 12:17:04 -04:00
Kristin Rutenkolk
4160b1cb68 consistently serialize strings to MemorySegment instead of addresses
(Longs) and remove ad-hoc upcall-class Long to MemorySegment conversion
2024-07-23 15:39:58 +02:00
Kristin Rutenkolk
854d6ce850 migrate as-segment to jdk22 API 2024-06-27 16:26:22 +02:00
Kristin Rutenkolk
56481ea9e3 revert regression as it breaks user code (for now) 2024-06-27 15:40:42 +02:00
Kristin Rutenkolk
854914350c rename reference to nonexistent MemoryAddress class to MemorySegment 2024-06-27 15:17:14 +02:00
Kristin Rutenkolk
85d52f64b7 fix upcalls with strings 2024-06-26 13:22:47 +02:00
Kristin Rutenkolk
a04fe7253f change String handling to match new FFI API 2024-06-12 11:10:52 -07:00
Joshua Suskalo
b7092b4af6
WIP Finish updating files to fully be on JDK 21
This is still incomplete, I get crashes on upcalls.
2024-01-29 06:22:39 -06:00
Joshua Suskalo
2325abf53b
WIP Update coffi.mem to JDK 21 2023-12-27 09:14:44 -06:00
Joshua Suskalo
36f1685718
Update to .find(String) api in loader 2023-09-21 10:39:15 -05:00
Joshua Suskalo
5deac64934
Fix primitive static variables not deserializing 2023-03-28 14:26:33 -05:00
Joshua Suskalo
f22cf8f81d
Fix uses of defvar not compiling 2023-03-28 14:26:33 -05:00
Joshua Suskalo
218545feb7
Fix bug where defvar and friends didn't work
One function was private that didn't need to be since it was being used
by the macros. This commit just makes it public.
2023-03-28 14:26:32 -05:00
Joshua Suskalo
2c45d8e875
Add support for primitive types to raws 2022-11-29 21:31:28 -06:00
Joshua Suskalo
5ccf369477
Fix a dumb of my dumb 2022-11-29 20:21:34 -06:00
Joshua Suskalo
8401cc3add
Fix bug where with-acquired did not return a value 2022-11-29 20:06:20 -06:00
Joshua Suskalo
379dc95c66
Fix dumb implementation of copy-segment 2022-11-29 18:52:11 -06:00
Joshua Suskalo
65c7544cc7
Add extra constructors for sessions 2022-11-16 16:58:20 -06:00
Joshua Suskalo
0e23a514f0
Fix misspelling in ex-info message 2022-11-16 09:27:01 -06:00
Joshua Suskalo
49bdca0766
Rename scope to session everywhere 2022-11-11 14:07:38 -06:00
Joshua Suskalo
3838c0f13c
Initial pass of update to JDK 19 2022-11-11 13:53:52 -06:00
Joshua Suskalo
036d4112fb
Fix nullpointer serialization in simpler inline cases 2022-10-31 13:59:03 -05:00
Joshua Suskalo
fa40902ce9
Fix bug with inlined serdes causing complex pointer serdes to fail 2022-10-31 13:59:03 -05:00
Joshua Suskalo
75bbe11971
Add todo about potential bug with nil as a primitive argument 2022-10-31 11:40:27 -05:00
Joshua Suskalo
319bb3a33b
Fix incorrect padding in C-layout structs 2022-10-31 11:39:00 -05:00
Joshua Suskalo
990e76c624
Fix incorrect pointer alignment 2022-10-31 11:39:00 -05:00
Joshua Suskalo
c0244a8b33
Add todo about raw types 2022-07-16 19:46:45 -05:00
Joshua Suskalo
e1e64d8362
Add very inefficient raw types 2022-07-16 19:37:46 -05:00
Joshua Suskalo
e9a5b640ac
Add support for flagset composite types 2022-07-07 16:08:41 -05:00
Joshua Suskalo
c0dee46fe9
Fix bug with incorrect enum serdes 2022-07-07 15:23:52 -05:00
Joshua Suskalo
2646e6fc9e
Add enum serdes 2022-07-07 14:15:33 -05:00
Joshua Suskalo
d7e0ced38b
Add macros to ease creating static variable references 2022-07-07 13:31:22 -05:00
Joshua Suskalo
20956f2549
Add function to get the segment from a static variable 2022-07-07 13:05:39 -05:00
Joshua Suskalo
3794ab7d5f
Use coerce-addressable where possible 2022-07-07 11:11:21 -05:00
Joshua Suskalo
b8383a467b
Correct docstring of downcall-handle 2022-07-07 11:11:13 -05:00
Joshua Suskalo
01515ad568
Correct the docstring of static-variable 2022-07-07 11:04:03 -05:00
Joshua Suskalo
98c59ea936
Correct the docstring of ensure-sybmol 2022-07-07 11:03:51 -05:00
Joshua Suskalo
db242e1445
Finish removing references to long-long 2022-07-07 11:03:26 -05:00
Joshua Suskalo
b10c459bf7
Update ffi namespace for jdk 18 2022-04-15 14:07:02 -05:00
Joshua Suskalo
4037040c4b
Update mem namespace to jdk18 2022-04-15 14:07:02 -05:00
Joshua Suskalo
90c125fb62 Fix bug where pointer types were not deserialized in wrapper 2022-01-19 11:34:57 -06:00
Joshua Suskalo
f7e50630cc Fix bug where non-native endian values were needlessly serialized 2022-01-19 11:19:12 -06:00
Joshua Suskalo
3e63230c1f type hint size and alignment constants 2022-01-19 11:00:57 -06:00
Joshua Suskalo
7ec2cd1575 Add size and alignment constants for primitives 2022-01-19 10:56:46 -06:00