avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott Banachowski (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AVRO-59) proposal to make some C++ object APIs more generic
Date Sat, 20 Jun 2009 19:42:07 GMT

     [ https://issues.apache.org/jira/browse/AVRO-59?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Scott Banachowski updated AVRO-59:

    Attachment: AVRO-59.patch

Here is the patch.  Currently the changes are only applied to the serializer side, but the
same can be applied to the parser side since they are symmetric. 

I will likewise change the parser side if people think this is a reasonable approach.

> proposal to make some C++ object APIs more generic
> --------------------------------------------------
>                 Key: AVRO-59
>                 URL: https://issues.apache.org/jira/browse/AVRO-59
>             Project: Avro
>          Issue Type: Improvement
>          Components: c++
>            Reporter: Scott Banachowski
>         Attachments: AVRO-59.patch
> This is a patch I made for the serializer.  In the original version, the Serializer object
has functions like putInt(), putLong(),..., i.e. each put* function has a different name.
> This is not convenient for generic template code, because each type requires a different
function call.  I moved the Serializer code to a class called Writer, that has only putValue
overridden for each type, e.g. putValue(int32_t), putValue(int64_t), putValue(bool) etc.
> Generic code, such as in AvroSerializer.hh can use the generic API.  To preserve the
explicit calls, Serializer still exists, but has become a thin wrapper for Writer.  The explicit
calls are still useful for when you don't want implicit conversion to accidentally choose
the wrong type.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message