[ https://issues.apache.org/jira/browse/THRIFT-1126?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bryan Duxbury reassigned THRIFT-1126: ------------------------------------- Assignee: Anthony Molinaro Do you think you could sign off on this patch? > Extending struct_info for erlang bindings > ----------------------------------------- > > Key: THRIFT-1126 > URL: https://issues.apache.org/jira/browse/THRIFT-1126 > Project: Thrift > Issue Type: Improvement > Components: Erlang - Compiler > Reporter: Anatoly Kanivetsky > Assignee: Anthony Molinaro > Attachments: thrift-1086852.diff > > > In addition to recently fixed THRIFT-27, I've made some extra changes, if no > one objects. > In this patch i've added more type specifiers to generated records. > Now it covers all possible types (I've forgot about set(), map() and > #another_record{}). > It now initializes all record fields without default value with 'undefined'. > This is a bit redundant, but I like it. (maybe you're not? let me know if you > have some objections!). > Also in this patch adds generation of additional structure info, that might > be useful from runtime. > It contains: > * FieldID, > * FieldReq, > * FieldType > * Identifier > * ConstValue > ConstValue is constructed everytime when struct_info_ext(...) is called. > This isn't good, but perhaps, it is ok if erlang optimizes such things. Does > it? > I planned to use struct_info_ext(...) in further modifications of erlang > thrift library, to implement runtime validation of presence of required > fields during reading/writing, and to avoid encoding of optional fields with > default values. But it is pretty usable of itself. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira