52 template <typename T = RequestPayload, typename = std::enable_if_t<!
has_flatbuffer_marker<T>(),
void>>
57 typename T = RequestUserHeader,
58 typename U = RequestPayload,
59 typename = std::enable_if_t<!std::is_same<
void, RequestUserHeader>::value && !
has_flatbuffer_marker<U>(),
void>>
64 typename T = RequestUserHeader,
65 typename U = RequestPayload,
66 typename = std::enable_if_t<!std::is_same<
void, RequestUserHeader>::value && !
has_flatbuffer_marker<U>(),
void>>
70 template <typename T = RequestPayload,
72 auto
payload() const -> const RequestPayload&;
75 template <typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE,
void>>
76 auto
payload() const -> bb::ImmutableSlice<ValueType>;
79 template <typename T = RequestPayload,
84 template <typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE,
void>>
89 template <typename T = RequestPayload,
92 ->
RequestMut<
Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader>;
96 template <typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, T>>
98 ->
RequestMut<
Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader>;
102 template <typename T = RequestPayload, typename = std::enable_if_t<bb::IsSlice<T>::VALUE, T>>
103 auto
write_from_fn(const
iox2::bb::StaticFunction<typename T::ValueType(uint64_t)>& initializer)
104 ->
RequestMut<
Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader>;
106#if IOX2_FEATURE_FLATBUFFERS
109 template <typename T = RequestPayload, typename = std::enable_if_t<has_flatbuffer_marker<T>(), T>>
114 template <ServiceType,
typename,
typename,
typename,
typename>
119 auto get_handle() -> iox2_request_mut_h;
122 typename RequestPayloadT,
123 typename RequestUserHeaderT,
124 typename ResponsePayloadT,
125 typename ResponseUserHeaderT>
130#if IOX2_FEATURE_FLATBUFFERS
132 typename RequestPayloadT,
133 typename RequestUserHeaderT,
134 typename ResponsePayloadT,
135 typename ResponseUserHeaderT>
139 flatbuffers::Offset<RequestPayloadT>)
144#if IOX2_FEATURE_FLATBUFFERS
314 flatbuffers::Offset<RequestPayload> root)
316 self.flatbuffer_builder().Finish(root,
nullptr);
317 const auto* payload_ptr = self.flatbuffer_builder().GetBufferPointer();
318 auto handle = self.get_handle();
319 iox2_request_mut_finish_serialized(&handle, payload_ptr);
324 return std::move(self.m_request);
334RequestMutUninit<Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader>::get_handle()
friend auto assume_init(RequestMutUninit< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT > &&self) -> RequestMut< S, RequestPayloadT, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT >
friend auto assume_init(RequestMutUninit< S, Flatbuffer< RequestPayloadT >, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT > &&self, flatbuffers::Offset< RequestPayloadT >) -> RequestMut< S, Flatbuffer< RequestPayloadT >, RequestUserHeaderT, ResponsePayloadT, ResponseUserHeaderT >
auto assume_init(RequestMutUninit< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader > &&self) -> RequestMut< Service, RequestPayload, RequestUserHeader, ResponsePayload, ResponseUserHeader >