adver = 0;
/* JSON::PP::Boolean:: or boolean:: */
GV* stashgv = gv_fetchpvn_flags(stash, strlen(stash), GV_NOADD_NOINIT, SVt_PVHV);
if (stashgv && strEQ(SvPVX(name), "JSON::PP")) {
/* Check for compat. versions. Which JSON::PP::Boolean is loaded? */
/* Cpanel::JSON::XS needs 3.0236, JSON::XS needs 3.0 */
char* file = GvFILE(stashgv);
if (file) {
/* we rely on C89 now */
if (strstr(file, "Cpanel/JSON/XS.pm") &&
version_number("Cpanel::JSON::XS::VERSION") < 3.0236)
badver = 1;
else if
olean>
=item C<get_boolean>
Set to "JSON::PP" or "boolean" to enable or 0 to disable. Encodes
true and false to the respective classes. It will try to load
L<JSON::PP> or L<boolean> and die if it ca
ucture:
my $o = YAML::Safe->new->boolean("JSON::PP"); # or "boolean"
my $data = $o->Load("booltrue: true");
$data->{boolfalse} = JSON::PP::false;
my $yaml = Dump($data);
# boolfalse: false
# booltrue: true
Please note that JSON::PP::Boolean and boolean.pm behave a bit differently.
Ideally you should only use them in boolean context.
Setting a boolean() class i