Liking cljdoc? Tell your friends :D

charred.api

Efficient pathways to read/write csv-based formats and json. Many of these functions have fast pathways for constructing the parser,writer in order to help with the case where you want to rapidly encode/decode a stream of small objects. For general uses, the simply named read-XXX, write-XXX functions are designed to be drop-in but far more efficient replacements of their clojure.data.csv and clojure.data.json equivalents.

This is based on an underlying char[] based parsing system that makes it easy to build new parsers and allows tight loops to iterate through loaded character arrays and are thus easily optimized by HotSpot.

  • CharBuffer.java - More efficient, simpler and general than StringBuilder.
  • CharReader.java - PushbackReader-like abstraction only capable of pushing back 1 character. Allows access to the underlying buffer and relative offset.

On top of these abstractions you have reader/writer abstractions for java and csv.

Many of these abstractions return a CloseableSupplier so you can simply use them with with-open and the underlying stream/reader will be closed when the control leaves the block. If you read all the data out of the supplier then the supplier itself will close the input when finished.

Efficient pathways to read/write csv-based formats and json.  Many of these functions
have fast pathways for constructing the parser,writer in order to help with the case where
you want to rapidly encode/decode a stream of small objects.  For general uses, the simply
named read-XXX, write-XXX functions are designed to be drop-in but far more efficient
replacements of their `clojure.data.csv` and `clojure.data.json` equivalents.


This is based on an underlying char[] based parsing system that makes it easy to build
new parsers and allows tight loops to iterate through loaded character arrays and are thus
easily optimized by HotSpot.

* [CharBuffer.java](https://github.com/cnuernber/charred/blob/master/java/chardata/CharBuffer.java) - More efficient, simpler and general than StringBuilder.
* [CharReader.java](https://github.com/cnuernber/charred/blob/master/java/chardata/CharReader.java) - PushbackReader-like abstraction only capable of pushing back
  1 character.  Allows access to the underlying buffer and relative offset.

On top of these abstractions you have reader/writer abstractions for java and csv.

Many of these abstractions return a [CloseableSupplier](https://github.com/cnuernber/charred/blob/master/java/charred/CloseableSupplier.java) so you
can simply use them with `with-open` and the underlying stream/reader will be closed when the control leaves the block.  If you read all the data
out of the supplier then the supplier itself will close the input when finished.
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close