Provided by: libsearch-elasticsearch-perl_5.01-1_all
NAME
Search::Elasticsearch::Role::Serializer::JSON - A Serializer role for JSON modules
VERSION
version 5.01
DESCRIPTION
This role encodes Perl data structures into JSON strings, and decodes JSON strings into Perl data structures.
METHODS
"encode()" $bytes = $serializer->encode($ref); $bytes = $serializer->encode($str); The "encode()" method converts array and hash refs into their JSON equivalents. If a string is passed in, it is returned as the UTF8 encoded version of itself. The empty string and "undef" are returned as is. "encode_pretty()" $bytes = $serializer->encode_pretty($ref); $bytes = $serializer->encode_pretty($str); Works exactly as "encode()" but the JSON output is pretty-printed. "encode_bulk()" $bytes = $serializer->encode_bulk([\%hash,\%hash,...]); $bytes = $serializer->encode_bulk([$str,$str,...]); The "encode_bulk()" method expects an array ref of hashes or strings. Each hash or string is processed by "encode()" then joined together by newline characters, with a final newline character appended to the end. This is the special JSON format used for bulk requests. "decode()" $var = $serializer->decode($json_bytes); $str = $serializer->decode($bytes); If the passed in value looks like JSON (ie starts with a "{" or "[" character), then it is decoded from JSON, otherwise it is returned as the UTF8 decoded version of itself. The empty string and "undef" are returned as is.
AUTHOR
Clinton Gormley <drtech@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2016 by Elasticsearch BV. This is free software, licensed under: The Apache License, Version 2.0, January 2004 perl v5.24.1 201Search::Elasticsearch::Role::Serializer::JSON(3pm)