NAME

    Devel::JSON - Easy JSON output for one-liners

SYNOPSIS

        $ perl -d:JSON -e '[ 1..3 ]'
        [
            1,
            2,
            3
        ]
    
        $ perl -d:JSON -e '{b => 2, c => 4}'
        {
            "b": 2,
            "c": 4
        }

    Default output encoding is UTF-x if this is the charset of the locale:

        $ perl -d:JSON -e "qq<\N{SNOWMAN}>"
        "☃"

    Force ASCII output:

        $ perl -d:JSON=ascii -e "qq<\N{SNOWMAN}>"
        "\u2603"

    Booleans:

        $ perl -d:JSON -MJSON::PP -e 'JSON::PP::true'
        true

DESCRIPTION

    If you use this module from the command-line, the last value of your
    one-liner (-e) code will be serialized as JSON data. The expression is
    evaluated in scalar context.

    The output will be either UTF-x (UTF-8, UTF-16...) or just ASCII,
    depending on your locale (check LC_CTYPE on Unix or GNU).

    As a convenience (because you may want to deal with non-ASCII content
    in your -e source), your code is converted from bytes using the current
    locale.

    The following JSON options are enabled by default:

    pretty

    canonical

    allow_nonref

    You can enable more options by giving import arguments (a '-' prefix
    disables the option):

        # Force ASCII output
        $ perl -d:JSON=ascii -e '[1..3]'
    
        # Disable pretty (note '-' before the name)
        $ perl -d:JSON=-pretty -e '[1..3]'
    
        # Non-ASCII in -e
        $ perl -d:JSON=ascii -e '"Mengué"'
        "Mengu\u00e9"

SEE ALSO

    JSON, JSON::MaybeXS, json-to (App::JSON::to).

AUTHOR

    Olivier Mengué, mailto:dolmen@cpan.org.

COPYRIGHT & LICENSE

    Copyright © 2017 Olivier Mengué.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.