package Search::Elasticsearch::Serializer::JSON; $Search::Elasticsearch::Serializer::JSON::VERSION = '1.16'; use Moo; use JSON::MaybeXS 1.002002 (); has 'JSON' => ( is => 'ro', default => sub { JSON::MaybeXS->new->utf8(1) } ); with 'Search::Elasticsearch::Role::Serializer::JSON'; use namespace::clean; 1; # ABSTRACT: The default JSON Serializer, using JSON::MaybeXS __END__ =pod =encoding UTF-8 =head1 NAME Search::Elasticsearch::Serializer::JSON - The default JSON Serializer, using JSON::MaybeXS =head1 VERSION version 1.16 =head1 SYNOPSIS $e = Search::Elasticsearch( # serializer => 'JSON' ); =head1 DESCRIPTION This default Serializer class chooses between: =over =item * L =item * L =item * L =back First it checks if either L or L is already loaded and, if so, uses the appropriate backend. Otherwise it tries to load L, then L and finally L. If you would prefer to specify a particular JSON backend, then you can do so by using one of these modules: =over =item * L =item * L =item * L =back See their documentation for details. =head1 AUTHOR Clinton Gormley =head1 COPYRIGHT AND LICENSE This software is Copyright (c) 2014 by Elasticsearch BV. This is free software, licensed under: The Apache License, Version 2.0, January 2004 =cut