Lines Matching refs:Func
188 template <typename ChannelT, typename SequenceNumberT, typename Func>
207 template <typename ChannelT, typename SequenceNumberT, typename Func>
221 typedef FunctionHelper<FunctionIdT, FuncId, RetT(ArgTs...)> Func; typedef
244 return Func::template respond<ChannelT, SequenceNumberT>(C, SeqNo, in readAndHandle()
382 template <typename Func>
383 using AsyncCallResult = std::future<typename Func::OptionalReturn>;
386 template <typename Func>
388 std::pair<std::future<typename Func::OptionalReturn>, SequenceNumberT>;
400 template <typename Func, typename... ArgTs>
401 Expected<AsyncCallWithSeqResult<Func>>
404 std::promise<typename Func::OptionalReturn> Promise; in appendCallAsyncWithSeq()
407 createOutstandingResult<Func>(std::move(Promise)); in appendCallAsyncWithSeq()
409 if (auto Err = CallHelper<ChannelT, SequenceNumberT, Func>::call(C, SeqNo, in appendCallAsyncWithSeq()
414 return AsyncCallWithSeqResult<Func>(std::move(Result), SeqNo); in appendCallAsyncWithSeq()
419 template <typename Func, typename... ArgTs>
420 Expected<AsyncCallWithSeqResult<Func>>
422 auto Result = appendCallAsyncWithSeq<Func>(C, Args...); in callAsyncWithSeq()
435 template <typename Func, typename... ArgTs>
436 Expected<AsyncCallResult<Func>> appendCallAsync(ChannelT &C, in appendCallAsync()
438 auto ResAndSeqOrErr = appendCallAsyncWithSeq<Func>(C, Args...); in appendCallAsync()
446 template <typename Func, typename... ArgTs>
447 Expected<AsyncCallResult<Func>> callAsync(ChannelT &C, in callAsync()
449 auto ResAndSeqOrErr = callAsyncWithSeq<Func>(C, Args...); in callAsync()
456 template <typename Func, typename HandleFtor, typename... ArgTs>
457 typename Func::ErrorReturn
459 if (auto ResultAndSeqNoOrErr = callAsyncWithSeq<Func>(C, Args...)) { in callSTHandling()
463 return Func::optionalToErrorReturn(ResultAndSeqNo.first.get()); in callSTHandling()
469 template <typename Func, typename... ArgTs>
470 typename Func::ErrorReturn callST(ChannelT &C, const ArgTs &... Args) { in callST()
471 return callSTHandling<Func>(C, handleNone, Args...); in callST()
488 template <typename Func, typename HandlerT>
490 return HandlerHelper<ChannelT, SequenceNumberT, Func>::handle(C, Handler); in handle()
494 template <typename Func, typename ClassT, typename RetT, typename... ArgTs>
497 return handle<Func>( in handle()
506 template <typename Func, typename HandlerT>
511 if (FuncId != Func::Id) in expect()
513 return handle<Func>(C, Handler); in expect()
517 template <typename Func, typename ClassT, typename... ArgTs>
520 return expect<Func>( in expect()
655 template <typename Func>
659 OutstandingResultImpl(std::promise<typename Func::OptionalReturn> &&P) in OutstandingResultImpl()
662 Error readResult(ChannelT &C) override { return Func::readResult(C, P); } in readResult()
664 void abandon() override { Func::abandon(P); } in abandon()
667 std::promise<typename Func::OptionalReturn> P;
671 template <typename Func>
673 createOutstandingResult(std::promise<typename Func::OptionalReturn> &&P) { in createOutstandingResult()
674 return llvm::make_unique<OutstandingResultImpl<Func>>(std::move(P)); in createOutstandingResult()