Add IO.copy(InputStream, OutputStream) method to airframe-control #3949
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a new
IO.copy(InputStream, OutputStream)
method to the airframe-control module for copying data between streams on JVM and Native platforms.Changes
IO.copy(in: InputStream, out: OutputStream): Unit
method to the shared IO objectreadFully
method)withResource
for automatic resource management of InputStreamflush()
on OutputStream to ensure buffered data is writtenUsage
Platform Support
The method is available on all platforms that support Java IO classes (JVM and Native), while JS compilation succeeds but the classes themselves are not meaningful in a JavaScript context.
Testing
Added comprehensive test suite (
IOTest
) that verifies:All tests pass on JVM and Native platforms.
Fixes #396.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.