[
https://issues.apache.org/jira/browse/THRIFT-122?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12625020#action_12625020
]
Noble Paul commented on THRIFT-122:
-----------------------------------
Let us assume that some languages have practical difficulty with this kind data
structures. Even if a language does not support this it will be easily be able
to skip the element very easily because the type info of each field is also
encoded there.
>From what you have been saying C++ is the language which will have most
>difficulty. For other languages it may just work fine? .C++ can at least
>return a void* for such data structures
Let us explore how we can elegantly support this in C++. Let us not say that it
is *difficult* so we will not do it. It is our job to make the difficult things
possible.
> Allow heterogeneous collections
> -------------------------------
>
> Key: THRIFT-122
> URL: https://issues.apache.org/jira/browse/THRIFT-122
> Project: Thrift
> Issue Type: New Feature
> Reporter: Noble Paul
>
> Currently thrift only supports homogeneous collections . But , that is very
> restrictive for many languages which allows heterogeneous collections. It
> does not have to be supported in BinaryProtocol The new DenseProtocol may add
> support for this
> implementation details
> the IDL can allow syntax
> {code}
> list<?>
> set<?>
> map<?,?>
> map<?,the-type>
> map<the-type,?>
> {code}
> While writing down data use a type modifier to say whether key (1), value(2)
> or both(3) are wild cards
> for a List/Set use a type modifier 1 to specify that it is heterogeneous
> If it is a homogeneous collection do it the way it is done now.
> Or else
> add type information just before the data. So it adds an extra byte/element
> For ma
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.