NAME

Data::Record::Serialize::Encode::json - encoded a record as JSON

VERSION

version 1.06

SYNOPSIS

use Data::Record::Serialize;

my $s = Data::Record::Serialize->new( encode => 'json', ... );

$s->send( \%record );

DESCRIPTION

Data::Record::Serialize::Encode::json encodes a record as JSON.

If a field's type is N or I, it will be properly encoded by JSON as a number. Field's with type S are force to be strings.

Boolean fields (type B) are transformed into values recognized by the back-end encoder.

The output consists of concatenated JSON objects, and is mostly easily read by an incremental decoder, e.g.

use JSON::MaybeXS;

@data = JSON->new->incr_parse( $json );

It performs the Data::Record::Serialize::Role::Encode role.

METHODS

to_bool

$bool = $self->to_bool( $truthy );

Convert a truthy value to something that the JSON encoders will recognize as a boolean.

INTERNALS

INTERFACE

There are no additional attributes which may be passed to Data::Record::Serialize::new.

SUPPORT

Bugs

Please report any bugs or feature requests to bug-data-record-serialize@rt.cpan.org or through the web interface at: https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Record-Serialize

Source

Source is available at

https://gitlab.com/djerius/data-record-serialize

and may be cloned from

https://gitlab.com/djerius/data-record-serialize.git

SEE ALSO

Please see those modules/websites for more information related to this module.

AUTHOR

Diab Jerius <djerius@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2017 by Smithsonian Astrophysical Observatory.

This is free software, licensed under:

The GNU General Public License, Version 3, June 2007