NAME¶
Dancer2::Core::Role::Serializer - Role for Serializer engines
VERSION¶
version 0.152000
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", "deserialize" and "loaded", and
should define the "content_type" attribute value.
ATTRIBUTES¶
error¶
The error string in case the serializer is in error state.
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¶
has_error¶
A predicate to check whether the serializer is in error state.
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.
loaded¶
This method should return a boolean true value if the serializer is able to
work. This method might verify the existence of some Perl module or some other
detail. If everything needed for the serializer to work is present the method
returns a true value. If not, returns a false value.
METHODS¶
AUTHOR¶
Dancer Core Developers
COPYRIGHT AND LICENSE¶
This software is copyright (c) 2014 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.