Source code for soupstars.serializers

"""
Serializers
~~~~~~~~~~~

Serializers help convert parsers into storable objects. The functions defined in this module
are used to instruct soupstars about how to perform the serialization.
"""


[docs]def serialize(function): """ Decorating a function defined on a parser with `serialize` instructs soupstars to include that function's return value when building its own serialization. >>> from soupstars import Parser, serialize >>> class MyParser(Parser): ... @serialize ... def length(self): ... return len(self.response.content) ... >>> parser = MyParser('https://jsonplaceholder.typicode.com/todos/1') >>> parser.serializer_names() ['length'] >>> 'length' in parser.to_dict() True """ function._soupstar_serializable = True return function