Writers

Implementations of `java.io.Writer` with different trade-offs.

Лицензия

Лицензия

MIT
Группа

Группа

com.github.marschall
Идентификатор

Идентификатор

writers
Последняя версия

Последняя версия

0.2.0
Дата

Дата

Тип

Тип

jar
Описание

Описание

Writers
Implementations of `java.io.Writer` with different trade-offs.

Скачать writers

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/com.github.marschall/writers/ -->
<dependency>
    <groupId>com.github.marschall</groupId>
    <artifactId>writers</artifactId>
    <version>0.2.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.marschall/writers/
implementation 'com.github.marschall:writers:0.2.0'
// https://jarcasting.com/artifacts/com.github.marschall/writers/
implementation ("com.github.marschall:writers:0.2.0")
'com.github.marschall:writers:jar:0.2.0'
<dependency org="com.github.marschall" name="writers" rev="0.2.0">
  <artifact name="writers" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.marschall', module='writers', version='0.2.0')
)
libraryDependencies += "com.github.marschall" % "writers" % "0.2.0"
[com.github.marschall/writers "0.2.0"]

Зависимости

test (2)

Идентификатор библиотеки Тип Версия
org.junit.jupiter : junit-jupiter-api jar
org.junit.jupiter : junit-jupiter-engine jar

Модули Проекта

Данный проект не имеет модулей.

Writers Maven Central Javadocs

Implementations of java.io.Writer with different trade-offs.

java.io.OutputStreamWriter is very flexible and supports any encoding. However its use of sun.nio.cs.StreamEncoder can result in a noticeable overhead for small writes. It allocates a few temporary objects which for small writes can be noticeable. By addressing only special cases we can make optimizations based on different trade-offs.

Currently we only offer the following two classes:

  • com.github.marschall.writers.AsciiOutputStreamWriter, only supports US-ASCII.
    • does not allocate any objects
    • thread-safe
  • com.github.marschall.writers.BufferedAsciiOutputStreamWriter, only supports US-ASCII but also buffers like a java.io.BufferedOutputStream. This can result in more efficient writes than using com.github.marschall.writers.AsciiOutputStreamWriter with java.io.BufferedOutputStream.
    • does not allocate any objects beyond the initial byte[], the #write and #append methods do not allocate memory
    • uses bulk array copy methods on Java 9+
    • not thread-safe

This project requires Java 11.

Версии библиотеки

Версия
0.2.0
0.1.1
0.1.0