[foreign-abi] RFR: 8247488: Add support for string helpers in CSupport (decoding support)
Maurizio Cimadamore
mcimadamore at openjdk.java.net
Mon Jun 15 18:29:54 UTC 2020
This patch add more symmetric support for charset-driven decoding of the contents of a native string.
That means we can no longer using a StringBuilder, but, instead, we have to get the byte array and create a `String`
out of that using specified `Charset` instance.
Implementation-wise, following an offline discussion with Jorn, I've settled for an approach which finds string length,
then does a bulk copy to a byte array. Not sure this is going to peform well on small strings. The alternative would
have been to use `ByteArrayOutputStream` - but the issue there is that both `write` and `toString` methods there are
`synchronized`.
In any case, I think the implementation can be made more efficient later, if we find that to be an issue.
-------------
Commit messages:
- Add support for charset decoding when converting C string into Java string
Changes: https://git.openjdk.java.net/panama-foreign/pull/207/files
Webrev: https://webrevs.openjdk.java.net/panama-foreign/207/webrev.00
Issue: https://bugs.openjdk.java.net/browse/JDK-8247488
Stats: 72 lines in 2 files changed: 61 ins; 2 del; 9 mod
Patch: https://git.openjdk.java.net/panama-foreign/pull/207.diff
Fetch: git fetch https://git.openjdk.java.net/panama-foreign pull/207/head:pull/207
PR: https://git.openjdk.java.net/panama-foreign/pull/207
More information about the panama-dev
mailing list