Skip to content

0.0.1

Choose a tag to compare

@itboy87 itboy87 released this 02 Nov 12:43
· 120 commits to main since this release

Core IO Module (com.fleeksoft.io:core-io)

This module delivers foundational classes essential for efficient buffer and charset management.

  • Buffer: A base container for handling data, designed to be compatible with java.nio.Buffer.
  • ByteBuffer & CharBuffer: Specialized buffers for byte and character data.
  • CharBufferFactory: A utility class for generating instances of CharBuffer and ByteBuffer.
  • Closeable: An interface for managing resources that need closing after use.
  • Readable: An interface for reading data into CharBuffer.

Main IO Module (com.fleeksoft.io:io)

This module provides key classes for managing character and byte stream reading.

  • Reader & InputStream: Abstract classes for character and raw byte stream reading.
  • ByteArrayInputStream: Facilitates the creation of InputStream from byte arrays.
  • InputStreamReader: Bridges the gap between byte and character streams.
  • BufferedReader: Wraps character streams for efficient reading.
  • StringReader & CharArrayReader: Read from strings and character arrays, respectively.
  • FilterInputStream & FilterReader: Decorators for additional stream functionality.
  • PushbackReader: Supports pushing back characters for re-reading.
  • Charset: Facilitates text encoding and decoding, leveraging com.fleeksoft.charset.
  • Extension Functions: Enhances usability with built-in functions for handling streams:
    • String.byteInputStream()
    • ByteArray.inputStream()
    • InputStream.reader()
    • Reader.buffered(), and more.

kotlinx-io Integration (com.fleeksoft.io:kotlinx-io)

This module ensures seamless interoperation with kotlinx-io, extending its capabilities.

  • Source.asInputStream(): Converts a Source into an InputStream.
  • RawSource.asInputStream(): Converts a RawSource into an InputStream.
  • InputStream.asSource(): Transforms an InputStream into a RawSource.