NAME

Test2::Harness::Util::JSON - Utility class to help Test2::Harness pick the best JSON implementation.

DESCRIPTION

This package provides functions for encoding/decoding json, and uses the best json tools available.

SYNOPSIS

use Test2::Harness::Util::JSON qw/encode_json decode_json/;

my $data = { foo => 1 };
my $json = encode_json($data);
my $copy = decode_json($json);

EXPORTS

$package = JSON()

This returns the JSON package being used by yath.

$bool = JSON_IS_PP()

True if yath is using JSON::PP.

$bool = JSON_IS_XS()

True if yath is using JSON::XS.

$bool = JSON_IS_CPANEL()

True if yath is using Cpanel::JSON::XS.

$bool = JSON_IS_CPANEL_OR_XS()

True if either JSON::XS or Cpanel::JSON::XS are being used.

$string = encode_json($data)

Encode data into json. String will be 1-line.

$data = decode_json($string)

Decode json data from the string.

$string = encode_pretty_json($data)

Encode into human-friendly json.

$string = encode_canon_json($data)

Encode into canon-json.

SOURCE

The source code repository for Test2-Harness can be found at http://github.com/Test-More/Test2-Harness/.

MAINTAINERS

Chad Granum <exodist@cpan.org>

AUTHORS

Chad Granum <exodist@cpan.org>

COPYRIGHT

Copyright 2020 Chad Granum <exodist7@gmail.com>.

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

See http://dev.perl.org/licenses/