1 /**
2  * Autogenerated by Thrift for src/module.thrift
3  *
4  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5  *  @generated @nocommit
6  */
7 #pragma once
8 
9 #include <thrift/lib/cpp2/gen/service_h.h>
10 
11 #include "thrift/compiler/test/fixtures/mcpp2-compare/gen-cpp2/ReturnServiceAsyncClient.h"
12 #include "thrift/compiler/test/fixtures/mcpp2-compare/gen-cpp2/module_types.h"
13 #include "thrift/compiler/test/fixtures/mcpp2-compare/gen-cpp2/includes_types.h"
14 #include <folly/small_vector.h>
15 
16 namespace folly {
17   class IOBuf;
18   class IOBufQueue;
19 }
20 namespace apache { namespace thrift {
21   class Cpp2RequestContext;
22   class BinaryProtocolReader;
23   class CompactProtocolReader;
24   namespace transport { class THeader; }
25 }}
26 
27 namespace some { namespace valid { namespace ns {
28 
29 class ReturnServiceSvAsyncIf {
30  public:
~ReturnServiceSvAsyncIf()31   virtual ~ReturnServiceSvAsyncIf() {}
32   virtual void async_eb_noReturn(std::unique_ptr<apache::thrift::HandlerCallback<void>> callback) = 0;
33   virtual void async_tm_boolReturn(std::unique_ptr<apache::thrift::HandlerCallback<bool>> callback) = 0;
34   virtual folly::Future<bool> future_boolReturn() = 0;
35   virtual folly::SemiFuture<bool> semifuture_boolReturn() = 0;
36   virtual void async_tm_i16Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int16_t>> callback) = 0;
37   virtual folly::Future<::std::int16_t> future_i16Return() = 0;
38   virtual folly::SemiFuture<::std::int16_t> semifuture_i16Return() = 0;
39   virtual void async_tm_i32Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int32_t>> callback) = 0;
40   virtual folly::Future<::std::int32_t> future_i32Return() = 0;
41   virtual folly::SemiFuture<::std::int32_t> semifuture_i32Return() = 0;
42   virtual void async_tm_i64Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int64_t>> callback) = 0;
43   virtual folly::Future<::std::int64_t> future_i64Return() = 0;
44   virtual folly::SemiFuture<::std::int64_t> semifuture_i64Return() = 0;
45   virtual void async_tm_floatReturn(std::unique_ptr<apache::thrift::HandlerCallback<float>> callback) = 0;
46   virtual folly::Future<float> future_floatReturn() = 0;
47   virtual folly::SemiFuture<float> semifuture_floatReturn() = 0;
48   virtual void async_tm_doubleReturn(std::unique_ptr<apache::thrift::HandlerCallback<double>> callback) = 0;
49   virtual folly::Future<double> future_doubleReturn() = 0;
50   virtual folly::SemiFuture<double> semifuture_doubleReturn() = 0;
51   virtual void async_eb_stringReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::string>>> callback) = 0;
52   virtual void async_tm_binaryReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::string>>> callback) = 0;
53   virtual folly::Future<std::unique_ptr<::std::string>> future_binaryReturn() = 0;
54   virtual folly::SemiFuture<std::unique_ptr<::std::string>> semifuture_binaryReturn() = 0;
55   virtual void async_tm_mapReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>>> callback) = 0;
56   virtual folly::Future<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>> future_mapReturn() = 0;
57   virtual folly::SemiFuture<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>> semifuture_mapReturn() = 0;
58   virtual void async_tm_simpleTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<::some::valid::ns::simpleTypeDef>> callback) = 0;
59   virtual folly::Future<::some::valid::ns::simpleTypeDef> future_simpleTypedefReturn() = 0;
60   virtual folly::SemiFuture<::some::valid::ns::simpleTypeDef> semifuture_simpleTypedefReturn() = 0;
61   virtual void async_tm_complexTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::complexStructTypeDef>>> callback) = 0;
62   virtual folly::Future<std::unique_ptr<::some::valid::ns::complexStructTypeDef>> future_complexTypedefReturn() = 0;
63   virtual folly::SemiFuture<std::unique_ptr<::some::valid::ns::complexStructTypeDef>> semifuture_complexTypedefReturn() = 0;
64   virtual void async_tm_list_mostComplexTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>>> callback) = 0;
65   virtual folly::Future<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>> future_list_mostComplexTypedefReturn() = 0;
66   virtual folly::SemiFuture<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>> semifuture_list_mostComplexTypedefReturn() = 0;
67   virtual void async_eb_enumReturn(std::unique_ptr<apache::thrift::HandlerCallback<::some::valid::ns::MyEnumA>> callback) = 0;
68   virtual void async_eb_list_EnumReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::MyEnumA>>>> callback) = 0;
69   virtual void async_tm_structReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::MyStruct>>> callback) = 0;
70   virtual folly::Future<std::unique_ptr<::some::valid::ns::MyStruct>> future_structReturn() = 0;
71   virtual folly::SemiFuture<std::unique_ptr<::some::valid::ns::MyStruct>> semifuture_structReturn() = 0;
72   virtual void async_tm_set_StructReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>>> callback) = 0;
73   virtual folly::Future<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>> future_set_StructReturn() = 0;
74   virtual folly::SemiFuture<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>> semifuture_set_StructReturn() = 0;
75   virtual void async_eb_unionReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::ComplexUnion>>> callback) = 0;
76   virtual void async_tm_list_UnionReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>>> callback) = 0;
77   virtual folly::Future<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>> future_list_UnionReturn() = 0;
78   virtual folly::SemiFuture<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>> semifuture_list_UnionReturn() = 0;
79   virtual void async_eb_readDataEb(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::IOBuf>>> callback, ::std::int64_t p_size) = 0;
80   virtual void async_tm_readData(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::IOBufPtr>>> callback, ::std::int64_t p_size) = 0;
81   virtual folly::Future<std::unique_ptr<::some::valid::ns::IOBufPtr>> future_readData(::std::int64_t p_size) = 0;
82   virtual folly::SemiFuture<std::unique_ptr<::some::valid::ns::IOBufPtr>> semifuture_readData(::std::int64_t p_size) = 0;
83 };
84 
85 class ReturnServiceAsyncProcessor;
86 
87 class ReturnServiceSvIf : public ReturnServiceSvAsyncIf, public apache::thrift::ServerInterface {
88  public:
getGeneratedName()89   std::string_view getGeneratedName() const override { return "ReturnService"; }
90 
91   typedef ReturnServiceAsyncProcessor ProcessorType;
92   std::unique_ptr<apache::thrift::AsyncProcessor> getProcessor() override;
93   CreateMethodMetadataResult createMethodMetadata() override;
94 
95 
96   void async_eb_noReturn(std::unique_ptr<apache::thrift::HandlerCallback<void>> callback) override;
97   virtual bool boolReturn();
98   folly::Future<bool> future_boolReturn() override;
99   folly::SemiFuture<bool> semifuture_boolReturn() override;
100   void async_tm_boolReturn(std::unique_ptr<apache::thrift::HandlerCallback<bool>> callback) override;
101   virtual ::std::int16_t i16Return();
102   folly::Future<::std::int16_t> future_i16Return() override;
103   folly::SemiFuture<::std::int16_t> semifuture_i16Return() override;
104   void async_tm_i16Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int16_t>> callback) override;
105   virtual ::std::int32_t i32Return();
106   folly::Future<::std::int32_t> future_i32Return() override;
107   folly::SemiFuture<::std::int32_t> semifuture_i32Return() override;
108   void async_tm_i32Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int32_t>> callback) override;
109   virtual ::std::int64_t i64Return();
110   folly::Future<::std::int64_t> future_i64Return() override;
111   folly::SemiFuture<::std::int64_t> semifuture_i64Return() override;
112   void async_tm_i64Return(std::unique_ptr<apache::thrift::HandlerCallback<::std::int64_t>> callback) override;
113   virtual float floatReturn();
114   folly::Future<float> future_floatReturn() override;
115   folly::SemiFuture<float> semifuture_floatReturn() override;
116   void async_tm_floatReturn(std::unique_ptr<apache::thrift::HandlerCallback<float>> callback) override;
117   virtual double doubleReturn();
118   folly::Future<double> future_doubleReturn() override;
119   folly::SemiFuture<double> semifuture_doubleReturn() override;
120   void async_tm_doubleReturn(std::unique_ptr<apache::thrift::HandlerCallback<double>> callback) override;
121   void async_eb_stringReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::string>>> callback) override;
122   virtual void binaryReturn(::std::string& /*_return*/);
123   folly::Future<std::unique_ptr<::std::string>> future_binaryReturn() override;
124   folly::SemiFuture<std::unique_ptr<::std::string>> semifuture_binaryReturn() override;
125   void async_tm_binaryReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::string>>> callback) override;
126   virtual void mapReturn(::std::map<::std::string, ::std::int64_t>& /*_return*/);
127   folly::Future<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>> future_mapReturn() override;
128   folly::SemiFuture<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>> semifuture_mapReturn() override;
129   void async_tm_mapReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::map<::std::string, ::std::int64_t>>>> callback) override;
130   virtual ::some::valid::ns::simpleTypeDef simpleTypedefReturn();
131   folly::Future<::some::valid::ns::simpleTypeDef> future_simpleTypedefReturn() override;
132   folly::SemiFuture<::some::valid::ns::simpleTypeDef> semifuture_simpleTypedefReturn() override;
133   void async_tm_simpleTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<::some::valid::ns::simpleTypeDef>> callback) override;
134   virtual void complexTypedefReturn(::some::valid::ns::complexStructTypeDef& /*_return*/);
135   folly::Future<std::unique_ptr<::some::valid::ns::complexStructTypeDef>> future_complexTypedefReturn() override;
136   folly::SemiFuture<std::unique_ptr<::some::valid::ns::complexStructTypeDef>> semifuture_complexTypedefReturn() override;
137   void async_tm_complexTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::complexStructTypeDef>>> callback) override;
138   virtual void list_mostComplexTypedefReturn(::std::vector<::some::valid::ns::mostComplexTypeDef>& /*_return*/);
139   folly::Future<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>> future_list_mostComplexTypedefReturn() override;
140   folly::SemiFuture<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>> semifuture_list_mostComplexTypedefReturn() override;
141   void async_tm_list_mostComplexTypedefReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::mostComplexTypeDef>>>> callback) override;
142   void async_eb_enumReturn(std::unique_ptr<apache::thrift::HandlerCallback<::some::valid::ns::MyEnumA>> callback) override;
143   void async_eb_list_EnumReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::MyEnumA>>>> callback) override;
144   virtual void structReturn(::some::valid::ns::MyStruct& /*_return*/);
145   folly::Future<std::unique_ptr<::some::valid::ns::MyStruct>> future_structReturn() override;
146   folly::SemiFuture<std::unique_ptr<::some::valid::ns::MyStruct>> semifuture_structReturn() override;
147   void async_tm_structReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::MyStruct>>> callback) override;
148   virtual void set_StructReturn(::std::set<::some::valid::ns::MyStruct>& /*_return*/);
149   folly::Future<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>> future_set_StructReturn() override;
150   folly::SemiFuture<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>> semifuture_set_StructReturn() override;
151   void async_tm_set_StructReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::set<::some::valid::ns::MyStruct>>>> callback) override;
152   void async_eb_unionReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::ComplexUnion>>> callback) override;
153   virtual void list_UnionReturn(::std::vector<::some::valid::ns::ComplexUnion>& /*_return*/);
154   folly::Future<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>> future_list_UnionReturn() override;
155   folly::SemiFuture<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>> semifuture_list_UnionReturn() override;
156   void async_tm_list_UnionReturn(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::std::vector<::some::valid::ns::ComplexUnion>>>> callback) override;
157   void async_eb_readDataEb(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::IOBuf>>> callback, ::std::int64_t p_size) override;
158   virtual void readData(::some::valid::ns::IOBufPtr& /*_return*/, ::std::int64_t /*size*/);
159   folly::Future<std::unique_ptr<::some::valid::ns::IOBufPtr>> future_readData(::std::int64_t p_size) override;
160   folly::SemiFuture<std::unique_ptr<::some::valid::ns::IOBufPtr>> semifuture_readData(::std::int64_t p_size) override;
161   void async_tm_readData(std::unique_ptr<apache::thrift::HandlerCallback<std::unique_ptr<::some::valid::ns::IOBufPtr>>> callback, ::std::int64_t p_size) override;
162  private:
163   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_boolReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
164   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_i16Return{apache::thrift::detail::si::InvocationType::AsyncTm};
165   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_i32Return{apache::thrift::detail::si::InvocationType::AsyncTm};
166   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_i64Return{apache::thrift::detail::si::InvocationType::AsyncTm};
167   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_floatReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
168   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_doubleReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
169   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_binaryReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
170   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_mapReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
171   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_simpleTypedefReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
172   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_complexTypedefReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
173   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_list_mostComplexTypedefReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
174   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_structReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
175   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_set_StructReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
176   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_list_UnionReturn{apache::thrift::detail::si::InvocationType::AsyncTm};
177   std::atomic<apache::thrift::detail::si::InvocationType> __fbthrift_invocation_readData{apache::thrift::detail::si::InvocationType::AsyncTm};
178 };
179 
180 class ReturnServiceSvNull : public ReturnServiceSvIf {
181  public:
182   bool boolReturn() override;
183   ::std::int16_t i16Return() override;
184   ::std::int32_t i32Return() override;
185   ::std::int64_t i64Return() override;
186   float floatReturn() override;
187   double doubleReturn() override;
188   void binaryReturn(::std::string& /*_return*/) override;
189   void mapReturn(::std::map<::std::string, ::std::int64_t>& /*_return*/) override;
190   ::some::valid::ns::simpleTypeDef simpleTypedefReturn() override;
191   void complexTypedefReturn(::some::valid::ns::complexStructTypeDef& /*_return*/) override;
192   void list_mostComplexTypedefReturn(::std::vector<::some::valid::ns::mostComplexTypeDef>& /*_return*/) override;
193   void structReturn(::some::valid::ns::MyStruct& /*_return*/) override;
194   void set_StructReturn(::std::set<::some::valid::ns::MyStruct>& /*_return*/) override;
195   void list_UnionReturn(::std::vector<::some::valid::ns::ComplexUnion>& /*_return*/) override;
196   void readData(::some::valid::ns::IOBufPtr& /*_return*/, ::std::int64_t /*size*/) override;
197 };
198 
199 class ReturnServiceAsyncProcessor : public ::apache::thrift::GeneratedAsyncProcessor {
200  public:
201   const char* getServiceName() override;
202   void getServiceMetadata(apache::thrift::metadata::ThriftServiceMetadataResponse& response) override;
203   using BaseAsyncProcessor = void;
204  protected:
205   ReturnServiceSvIf* iface_;
206  public:
207   // This is implemented in case the corresponding AsyncProcessorFactory did not implement createMethodMetadata.
208   // This can happen if the service is using a custom AsyncProcessorFactory but re-using the same AsyncProcessor.
209   void processSerializedCompressedRequest(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::protocol::PROTOCOL_TYPES protType, apache::thrift::Cpp2RequestContext* context, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm) override;
210   // By default, this overload will be called for generated services
211   void processSerializedCompressedRequestWithMetadata(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, const apache::thrift::AsyncProcessorFactory::MethodMetadata& methodMetadata, apache::thrift::protocol::PROTOCOL_TYPES protType, apache::thrift::Cpp2RequestContext* context, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm) override;
212  public:
213   using ProcessFuncs = GeneratedAsyncProcessor::ProcessFuncs<ReturnServiceAsyncProcessor>;
214   using ProcessMap = GeneratedAsyncProcessor::ProcessMap<ProcessFuncs>;
215   static const ReturnServiceAsyncProcessor::ProcessMap& getOwnProcessMap();
216  private:
217   static const ReturnServiceAsyncProcessor::ProcessMap kOwnProcessMap_;
218  private:
219   template <typename ProtocolIn_, typename ProtocolOut_>
220   void setUpAndProcess_noReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
221   template <typename ProtocolIn_, typename ProtocolOut_>
222   void process_noReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
223   template <class ProtocolIn_, class ProtocolOut_>
224   static apache::thrift::SerializedResponse return_noReturn(apache::thrift::ContextStack* ctx);
225   template <class ProtocolIn_, class ProtocolOut_>
226   static void throw_wrapped_noReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
227   template <typename ProtocolIn_, typename ProtocolOut_>
228   void setUpAndProcess_boolReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
229   template <typename ProtocolIn_, typename ProtocolOut_>
230   void process_boolReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
231   template <class ProtocolIn_, class ProtocolOut_>
232   static apache::thrift::SerializedResponse return_boolReturn(apache::thrift::ContextStack* ctx, bool const& _return);
233   template <class ProtocolIn_, class ProtocolOut_>
234   static void throw_wrapped_boolReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
235   template <typename ProtocolIn_, typename ProtocolOut_>
236   void setUpAndProcess_i16Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
237   template <typename ProtocolIn_, typename ProtocolOut_>
238   void process_i16Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
239   template <class ProtocolIn_, class ProtocolOut_>
240   static apache::thrift::SerializedResponse return_i16Return(apache::thrift::ContextStack* ctx, ::std::int16_t const& _return);
241   template <class ProtocolIn_, class ProtocolOut_>
242   static void throw_wrapped_i16Return(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
243   template <typename ProtocolIn_, typename ProtocolOut_>
244   void setUpAndProcess_i32Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
245   template <typename ProtocolIn_, typename ProtocolOut_>
246   void process_i32Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
247   template <class ProtocolIn_, class ProtocolOut_>
248   static apache::thrift::SerializedResponse return_i32Return(apache::thrift::ContextStack* ctx, ::std::int32_t const& _return);
249   template <class ProtocolIn_, class ProtocolOut_>
250   static void throw_wrapped_i32Return(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
251   template <typename ProtocolIn_, typename ProtocolOut_>
252   void setUpAndProcess_i64Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
253   template <typename ProtocolIn_, typename ProtocolOut_>
254   void process_i64Return(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
255   template <class ProtocolIn_, class ProtocolOut_>
256   static apache::thrift::SerializedResponse return_i64Return(apache::thrift::ContextStack* ctx, ::std::int64_t const& _return);
257   template <class ProtocolIn_, class ProtocolOut_>
258   static void throw_wrapped_i64Return(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
259   template <typename ProtocolIn_, typename ProtocolOut_>
260   void setUpAndProcess_floatReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
261   template <typename ProtocolIn_, typename ProtocolOut_>
262   void process_floatReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
263   template <class ProtocolIn_, class ProtocolOut_>
264   static apache::thrift::SerializedResponse return_floatReturn(apache::thrift::ContextStack* ctx, float const& _return);
265   template <class ProtocolIn_, class ProtocolOut_>
266   static void throw_wrapped_floatReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
267   template <typename ProtocolIn_, typename ProtocolOut_>
268   void setUpAndProcess_doubleReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
269   template <typename ProtocolIn_, typename ProtocolOut_>
270   void process_doubleReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
271   template <class ProtocolIn_, class ProtocolOut_>
272   static apache::thrift::SerializedResponse return_doubleReturn(apache::thrift::ContextStack* ctx, double const& _return);
273   template <class ProtocolIn_, class ProtocolOut_>
274   static void throw_wrapped_doubleReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
275   template <typename ProtocolIn_, typename ProtocolOut_>
276   void setUpAndProcess_stringReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
277   template <typename ProtocolIn_, typename ProtocolOut_>
278   void process_stringReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
279   template <class ProtocolIn_, class ProtocolOut_>
280   static apache::thrift::SerializedResponse return_stringReturn(apache::thrift::ContextStack* ctx, ::std::string const& _return);
281   template <class ProtocolIn_, class ProtocolOut_>
282   static void throw_wrapped_stringReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
283   template <typename ProtocolIn_, typename ProtocolOut_>
284   void setUpAndProcess_binaryReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
285   template <typename ProtocolIn_, typename ProtocolOut_>
286   void process_binaryReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
287   template <class ProtocolIn_, class ProtocolOut_>
288   static apache::thrift::SerializedResponse return_binaryReturn(apache::thrift::ContextStack* ctx, ::std::string const& _return);
289   template <class ProtocolIn_, class ProtocolOut_>
290   static void throw_wrapped_binaryReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
291   template <typename ProtocolIn_, typename ProtocolOut_>
292   void setUpAndProcess_mapReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
293   template <typename ProtocolIn_, typename ProtocolOut_>
294   void process_mapReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
295   template <class ProtocolIn_, class ProtocolOut_>
296   static apache::thrift::SerializedResponse return_mapReturn(apache::thrift::ContextStack* ctx, ::std::map<::std::string, ::std::int64_t> const& _return);
297   template <class ProtocolIn_, class ProtocolOut_>
298   static void throw_wrapped_mapReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
299   template <typename ProtocolIn_, typename ProtocolOut_>
300   void setUpAndProcess_simpleTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
301   template <typename ProtocolIn_, typename ProtocolOut_>
302   void process_simpleTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
303   template <class ProtocolIn_, class ProtocolOut_>
304   static apache::thrift::SerializedResponse return_simpleTypedefReturn(apache::thrift::ContextStack* ctx, ::some::valid::ns::simpleTypeDef const& _return);
305   template <class ProtocolIn_, class ProtocolOut_>
306   static void throw_wrapped_simpleTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
307   template <typename ProtocolIn_, typename ProtocolOut_>
308   void setUpAndProcess_complexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
309   template <typename ProtocolIn_, typename ProtocolOut_>
310   void process_complexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
311   template <class ProtocolIn_, class ProtocolOut_>
312   static apache::thrift::SerializedResponse return_complexTypedefReturn(apache::thrift::ContextStack* ctx, ::some::valid::ns::complexStructTypeDef const& _return);
313   template <class ProtocolIn_, class ProtocolOut_>
314   static void throw_wrapped_complexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
315   template <typename ProtocolIn_, typename ProtocolOut_>
316   void setUpAndProcess_list_mostComplexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
317   template <typename ProtocolIn_, typename ProtocolOut_>
318   void process_list_mostComplexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
319   template <class ProtocolIn_, class ProtocolOut_>
320   static apache::thrift::SerializedResponse return_list_mostComplexTypedefReturn(apache::thrift::ContextStack* ctx, ::std::vector<::some::valid::ns::mostComplexTypeDef> const& _return);
321   template <class ProtocolIn_, class ProtocolOut_>
322   static void throw_wrapped_list_mostComplexTypedefReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
323   template <typename ProtocolIn_, typename ProtocolOut_>
324   void setUpAndProcess_enumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
325   template <typename ProtocolIn_, typename ProtocolOut_>
326   void process_enumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
327   template <class ProtocolIn_, class ProtocolOut_>
328   static apache::thrift::SerializedResponse return_enumReturn(apache::thrift::ContextStack* ctx, ::some::valid::ns::MyEnumA const& _return);
329   template <class ProtocolIn_, class ProtocolOut_>
330   static void throw_wrapped_enumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
331   template <typename ProtocolIn_, typename ProtocolOut_>
332   void setUpAndProcess_list_EnumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
333   template <typename ProtocolIn_, typename ProtocolOut_>
334   void process_list_EnumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
335   template <class ProtocolIn_, class ProtocolOut_>
336   static apache::thrift::SerializedResponse return_list_EnumReturn(apache::thrift::ContextStack* ctx, ::std::vector<::some::valid::ns::MyEnumA> const& _return);
337   template <class ProtocolIn_, class ProtocolOut_>
338   static void throw_wrapped_list_EnumReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
339   template <typename ProtocolIn_, typename ProtocolOut_>
340   void setUpAndProcess_structReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
341   template <typename ProtocolIn_, typename ProtocolOut_>
342   void process_structReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
343   template <class ProtocolIn_, class ProtocolOut_>
344   static apache::thrift::SerializedResponse return_structReturn(apache::thrift::ContextStack* ctx, ::some::valid::ns::MyStruct const& _return);
345   template <class ProtocolIn_, class ProtocolOut_>
346   static void throw_wrapped_structReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
347   template <typename ProtocolIn_, typename ProtocolOut_>
348   void setUpAndProcess_set_StructReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
349   template <typename ProtocolIn_, typename ProtocolOut_>
350   void process_set_StructReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
351   template <class ProtocolIn_, class ProtocolOut_>
352   static apache::thrift::SerializedResponse return_set_StructReturn(apache::thrift::ContextStack* ctx, ::std::set<::some::valid::ns::MyStruct> const& _return);
353   template <class ProtocolIn_, class ProtocolOut_>
354   static void throw_wrapped_set_StructReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
355   template <typename ProtocolIn_, typename ProtocolOut_>
356   void setUpAndProcess_unionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
357   template <typename ProtocolIn_, typename ProtocolOut_>
358   void process_unionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
359   template <class ProtocolIn_, class ProtocolOut_>
360   static apache::thrift::SerializedResponse return_unionReturn(apache::thrift::ContextStack* ctx, ::some::valid::ns::ComplexUnion const& _return);
361   template <class ProtocolIn_, class ProtocolOut_>
362   static void throw_wrapped_unionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
363   template <typename ProtocolIn_, typename ProtocolOut_>
364   void setUpAndProcess_list_UnionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
365   template <typename ProtocolIn_, typename ProtocolOut_>
366   void process_list_UnionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
367   template <class ProtocolIn_, class ProtocolOut_>
368   static apache::thrift::SerializedResponse return_list_UnionReturn(apache::thrift::ContextStack* ctx, ::std::vector<::some::valid::ns::ComplexUnion> const& _return);
369   template <class ProtocolIn_, class ProtocolOut_>
370   static void throw_wrapped_list_UnionReturn(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
371   template <typename ProtocolIn_, typename ProtocolOut_>
372   void setUpAndProcess_readDataEb(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
373   template <typename ProtocolIn_, typename ProtocolOut_>
374   void process_readDataEb(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
375   template <class ProtocolIn_, class ProtocolOut_>
376   static apache::thrift::SerializedResponse return_readDataEb(apache::thrift::ContextStack* ctx, ::some::valid::ns::IOBuf const& _return);
377   template <class ProtocolIn_, class ProtocolOut_>
378   static void throw_wrapped_readDataEb(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
379   template <typename ProtocolIn_, typename ProtocolOut_>
380   void setUpAndProcess_readData(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx, folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
381   template <typename ProtocolIn_, typename ProtocolOut_>
382   void process_readData(apache::thrift::ResponseChannelRequest::UniquePtr req, apache::thrift::SerializedCompressedRequest&& serializedRequest, apache::thrift::Cpp2RequestContext* ctx,folly::EventBase* eb, apache::thrift::concurrency::ThreadManager* tm);
383   template <class ProtocolIn_, class ProtocolOut_>
384   static apache::thrift::SerializedResponse return_readData(apache::thrift::ContextStack* ctx, ::some::valid::ns::IOBufPtr const& _return);
385   template <class ProtocolIn_, class ProtocolOut_>
386   static void throw_wrapped_readData(apache::thrift::ResponseChannelRequest::UniquePtr req,int32_t protoSeqId,apache::thrift::ContextStack* ctx,folly::exception_wrapper ew,apache::thrift::Cpp2RequestContext* reqCtx);
387  public:
ReturnServiceAsyncProcessor(ReturnServiceSvIf * iface)388   ReturnServiceAsyncProcessor(ReturnServiceSvIf* iface) :
389       iface_(iface) {}
~ReturnServiceAsyncProcessor()390   ~ReturnServiceAsyncProcessor() override {}
391 };
392 
393 }}} // some::valid::ns
394