[ https://issues.apache.org/jira/browse/THRIFT-5840?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jens Geyer updated THRIFT-5840: ------------------------------- Attachment: Thrift5840.thrift > Add support for custom generic types (definition time) > ------------------------------------------------------ > > Key: THRIFT-5840 > URL: https://issues.apache.org/jira/browse/THRIFT-5840 > Project: Thrift > Issue Type: Improvement > Components: Compiler (General) > Affects Versions: 0.21.0 > Reporter: Konstantin > Assignee: Jens Geyer > Priority: Major > Attachments: Thrift5840.thrift > > > It would be great to have custom generics support. (Like existing set<> > list<>) > Generics probably should exist only in definition & compilation time. For > example: > {code:c#} > // definiton > struct PagedList<T> > { > 1: list<T> Collection > 2: i32 PageSize > 3: i64 PageNumber > 4: i64 TotalCount > } > struct Nullable<T> > { > 1: T Value > } > // usage > enum SomeTypes > { > Type1 = 1 > Type2 = 2 > } > struct Data > { > 1: string Name > 2: i32 Age > 3: string Blabla > } > service AService > { > PagedList<Nullable<SomeTypes>> GetPagedTypes (1: i64 pageNumber, 2: i32 > pageSize) // etc > PagedList<Data> GetPagedData(1: i64 pageNumber, 2: i32 pageSize) > } > {code} > that would generate generic types where it is possible, and types like > PagedListData (or DataPagedList etc) in case if there is no generics support. > Right now it's required to define those PagedListData manually, which is > annoying and requires some extra effort. > What do you think? -- This message was sent by Atlassian Jira (v8.20.10#820010)