# Namespace: joker.json

v1.0

## Contents

- Summary
- Index
- Constants
- Variables
- Functions, Macros, and Special Forms

## Summary

Implements encoding and decoding of JSON as defined in RFC 4627.

## Index

- json-seq
- read-string
- write-string

## Constants

Constants are variables with `:const true` in their metadata. Joker currently does not recognize them as special; as such, it allows redefining them or their values.

(None.)

## Variables

(None.)

## Functions, Macros, and Special Forms

- ### json-seq

  Function v1.0

      (json-seq rdr)
      (json-seq rdr opts)

  Returns the json records from rdr as a lazy sequence.
  rdr must be a string or implement io.Reader.
  Optional opts map may have the following keys:
  :keywords? - if true, JSON keys will be converted from strings to keywords.

- ### read-string

  Function v1.0

      (read-string s)
      (read-string s opts)

  Parses the JSON-encoded data and return the result as a Joker value.
  Optional opts map may have the following keys:
  :keywords? - if true, JSON keys will be converted from strings to keywords.

- ### write-string

  Function v1.0

      (write-string v)
      (write-string v opts)

  Returns the JSON encoding of v. Optional opts may include :prefix and :indent keys
  with the same semantics as prefix and indent arguments to Go's json.MarshalIndent function.