Provided by: libdancer2-perl_0.400000+dfsg-1_all bug

NAME

       Dancer2::Core::Role::Serializer - Role for Serializer engines

VERSION

       version 0.400000

DESCRIPTION

       Any class that consumes this role will be able to be used as a serializer under Dancer2.

       In order to implement this role, the consumer must implement the methods "serialize" and
       "deserialize", and should define the "content_type" attribute value.

ATTRIBUTES

   content_type
       The content type of the object after being serialized. For example, a JSON serializer
       would have a application/json content type defined.

METHODS

   serialize($content, [\%options])
       The serialize method need to be implemented by the consumer. It receives the serializer
       class object and a reference to the object to be serialized. Should return the object
       after being serialized, in the content type defined by the "content_type" attribute.

       A third optional argument is a hash reference of options to the serializer.

       The serialize method must return bytes and therefore has to handle any encoding.

   deserialize($content, [\%options])
       The inverse method of "serialize". Receives the serializer class object and a string that
       should be deserialized. The method should return a reference to the deserialized Perl data
       structure.

       A third optional argument is a hash reference of options to the serializer.

       The deserialize method receives encoded bytes and must therefore handle any decoding
       required.

CONFIGURATION

       The serializer configuration variable tells Dancer2 which engine to use.

       You can change it either in your config.yml file:

           #Set JSON engine
           serializer: "JSON"

           # Prettify JSON output
           engines:
             serializer:
               JSON:
                 pretty: 1

       To know which engines are availables please see "Serializers" in Dancer2::Manual

AUTHOR

       Dancer Core Developers

COPYRIGHT AND LICENSE

       This software is copyright (c) 2022 by Alexis Sukrieh.

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