oracular (3) json_write.3tcl.gz

Provided by: tcllib_1.21+dfsg-1_all bug

NAME

       json::write - JSON generation

SYNOPSIS

       package require Tcl  8.5

       package require json::write  ?1.0.4?

       ::json::write indented

       ::json::write indented flag

       ::json::write aligned

       ::json::write aligned flag

       ::json::write string s

       ::json::write array arg...

       ::json::write array-strings arg...

       ::json::write object key value...

       ::json::write object-strings key value...

________________________________________________________________________________________________________________

DESCRIPTION

       The  json::write  package  provides  a  simple  Tcl-only  library  for  generation  of  text  in the JSON
       http://www.json.org/ data exchange format as specified in RFC 4627 http://www.ietf.org/rfc/rfc4627.txt.

COMMANDS

       ::json::write indented
              This method returns the current state of the indentation setting.

       ::json::write indented flag
              This and the method aligned configure the layout of the JSON generated by the package.

              If this flag is set (default) the package will break the generated  JSON  code  across  lines  and
              indent it according to its inner structure, with each key of an object on a separate line.

              If  this  flag  is  not  set, the whole JSON object will be written on a single line, with minimum
              spacing between all elements.

       ::json::write aligned
              This method returns the current state of the alignment setting.

       ::json::write aligned flag
              This and the method indented configure the layout of the JSON generated by the package.

              If this flag is set (default) the package ensures that the values for the keys in  an  object  are
              vertically  aligned  with each other, for a nice table effect. To make this work this also implies
              that indented is set as well.

              If this flag is not set, the output is formatted as per the value of indented, without  trying  to
              align the values for object keys.

       ::json::write string s
              This method takes the string s and returns it properly quoted for JSON as its result.

       ::json::write array arg...
              This  method  takes  a series of JSON formatted arguments and returns them as a properly formatted
              JSON array as its result.

       ::json::write array-strings arg...
              This is a convenience variant of array. It assumes  that  all  arguments  are  plain  strings  and
              formats them as JSON strings before passing them into the array.

       ::json::write object key value...
              This  method  takes  a  series  of key/value arguments, the values already formatted for JSON, and
              returns them as a properly formatted JSON object as its result, with the keys  formatted  as  JSON
              strings.

       ::json::write object-strings key value...
              This is a convenience variant of object. It assumes that all value arguments are plain strings and
              formats them as JSON strings before passing them into the object.

       To parse json, instead of writing it, see package json.

BUGS, IDEAS, FEEDBACK

       This document, and the package it describes, will undoubtedly contain bugs and  other  problems.   Please
       report  such  in the category json of the Tcllib Trackers [http://core.tcl.tk/tcllib/reportlist].  Please
       also report any ideas for enhancements you may have for either package and/or documentation.

       When proposing code changes, please provide unified diffs, i.e the output of diff -u.

       Note further that attachments are strongly preferred over inlined patches. Attachments  can  be  made  by
       going  to the Edit form of the ticket immediately after its creation, and then using the left-most button
       in the secondary navigation bar.

KEYWORDS

       data exchange, exchange format, javascript, json

CATEGORY

       CGI programming

       Copyright (c) 2009-2013,2022 Andreas Kupries <andreas_kupries@sourceforge.net>