.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
.    if \nF \{\
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{\
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "JSON_PP 1p"
.TH JSON_PP 1p 2023-09-25 "perl v5.38.0" "Perl Programmers Reference Guide"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH NAME
json_pp \- JSON::PP command utility
.SH SYNOPSIS
.IX Header "SYNOPSIS"
.Vb 1
\&    json_pp [\-v] [\-f from_format] [\-t to_format] [\-json_opt options_to_json1[,options_to_json2[,...]]]
.Ve
.SH DESCRIPTION
.IX Header "DESCRIPTION"
json_pp converts between some input and output formats (one of them is JSON).
This program was copied from json_xs and modified.
.PP
The default input format is json and the default output format is json with pretty option.
.SH OPTIONS
.IX Header "OPTIONS"
.SS \-f
.IX Subsection "-f"
.Vb 1
\&    \-f from_format
.Ve
.PP
Reads a data in the given format from STDIN.
.PP
Format types:
.IP json 4
.IX Item "json"
as JSON
.IP eval 4
.IX Item "eval"
as Perl code
.SS \-t
.IX Subsection "-t"
Writes a data in the given format to STDOUT.
.IP null 4
.IX Item "null"
no action.
.IP json 4
.IX Item "json"
as JSON
.IP dumper 4
.IX Item "dumper"
as Data::Dumper
.SS \-json_opt
.IX Subsection "-json_opt"
options to JSON::PP
.PP
Acceptable options are:
.PP
.Vb 2
\&    ascii latin1 utf8 pretty indent space_before space_after relaxed canonical allow_nonref
\&    allow_singlequote allow_barekey allow_bignum loose escape_slash indent_length
.Ve
.PP
Multiple options must be separated by commas:
.PP
.Vb 1
\&    Right: \-json_opt pretty,canonical
\&
\&    Wrong: \-json_opt pretty \-json_opt canonical
.Ve
.SS \-v
.IX Subsection "-v"
Verbose option, but currently no action in fact.
.SS \-V
.IX Subsection "-V"
Prints version and exits.
.SH EXAMPLES
.IX Header "EXAMPLES"
.Vb 2
\&    $ perl \-e\*(Aqprint q|{"foo":"あい","bar":1234567890000000000000000}|\*(Aq |\e
\&       json_pp \-f json \-t dumper \-json_opt pretty,utf8,allow_bignum
\&    
\&    $VAR1 = {
\&              \*(Aqbar\*(Aq => bless( {
\&                                \*(Aqvalue\*(Aq => [
\&                                             \*(Aq0000000\*(Aq,
\&                                             \*(Aq0000000\*(Aq,
\&                                             \*(Aq5678900\*(Aq,
\&                                             \*(Aq1234\*(Aq
\&                                           ],
\&                                \*(Aqsign\*(Aq => \*(Aq+\*(Aq
\&                              }, \*(AqMath::BigInt\*(Aq ),
\&              \*(Aqfoo\*(Aq => "\ex{3042}\ex{3044}"
\&            };
\&
\&    $ perl \-e\*(Aqprint q|{"foo":"あい","bar":1234567890000000000000000}|\*(Aq |\e
\&       json_pp \-f json \-t dumper \-json_opt pretty
\&    
\&    $VAR1 = {
\&              \*(Aqbar\*(Aq => \*(Aq1234567890000000000000000\*(Aq,
\&              \*(Aqfoo\*(Aq => "\ex{e3}\ex{81}\ex{82}\ex{e3}\ex{81}\ex{84}"
\&            };
.Ve
.SH "SEE ALSO"
.IX Header "SEE ALSO"
JSON::PP, json_xs
.SH AUTHOR
.IX Header "AUTHOR"
Makamaka Hannyaharamitu, <makamaka[at]cpan.org>
.SH "COPYRIGHT AND LICENSE"
.IX Header "COPYRIGHT AND LICENSE"
Copyright 2010 by Makamaka Hannyaharamitu
.PP
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
.SH "POD ERRORS"
.IX Header "POD ERRORS"
Hey! \fBThe above document had some coding errors, which are explained below:\fR
.IP "Around line 114:" 4
.IX Item "Around line 114:"
This document probably does not appear as it should, because its "=encoding utf8" line calls for an unsupported encoding.  [Encode.pm v?'s supported encodings are: ]
.Sp
Couldn't do =encoding utf8: This document probably does not appear as it should, because its "=encoding utf8" line calls for an unsupported encoding.  [Encode.pm v?'s supported encodings are: ]
