pub struct Handler<Service> { /* private fields */ }
tower
only.Expand description
イベントハンドラです。
§Example
use std::convert::Infallible;
use tower::service_fn;
use traq_bot_http::{payloads, RequestParser};
async fn on_ping((state, payload): (i32, payloads::PingPayload)) -> Result<(), Infallible> {
println!("state: {state:?}, ping: {payload:?}");
// assert_eq!(state, 0);
Ok(())
}
let parser = RequestParser::new("verification_token");
let handler = parser
.into_handler()
.on_ping(service_fn(on_ping))
.with_state(0i32);
§Composing Handler
Handler
はメソッドチェーンにより構成されます。使用可能なメソッドは以下の通りです。
.on_*<S>(S)
*
にはEventKind
の variant がsnake_case
で入ります。- 例:
Handler::on_message_created
.with_state<S>(S)
適切に構成された Handler
は Service
trait を実装します。各メソッドのドキュメントを参照してください。
Handler
の構成時にはコンパイルエラーが出ない可能性があります 。
Service
trait を使用するライブラリ (axum 等) の条件も確認してください。
§Note
この構造体の型パラメータは unstable です。Handler<T>
におけるT
は予告なく変化する可能性があります。
Implementations§
Source§impl<Service> Handler<Service>
impl<Service> Handler<Service>
Sourcepub fn with_state<State>(
self,
state: State,
) -> Handler<WithState<State, Service>>
pub fn with_state<State>( self, state: State, ) -> Handler<WithState<State, Service>>
イベントハンドラにState
を追加します。State
は以下の条件を満たす必要があります。
Clone
を実装している
§Example
use std::convert::Infallible;
use tower::service_fn;
use traq_bot_http::{payloads, RequestParser};
async fn on_ping(state: i32, payload: payloads::PingPayload) -> Result<(), Infallible> {
println!("state: {state}, payload: {payload:?}");
Ok(())
}
let parser = RequestParser::new("verification_token");
let handler = parser
.into_handler()
// これはinvalidです; with_stateはstateを使用するハンドラより後に置く必要があります
// .with_state(0)
.on_ping(service_fn(|(state, payload)| on_ping(state, payload)))
.with_state(0);
Source§impl<Service1> Handler<Service1>
impl<Service1> Handler<Service1>
Sourcepub fn on_ping<Service2, Req>(
self,
service: Service2,
) -> Handler<OnPing<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_ping<Service2, Req>(
self,
service: Service2,
) -> Handler<OnPing<Service2, Service1, Req>>where
Service2: Service<Req>,
PingPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいPingPayload
(PingPayload,)
(State, PingPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_joined<Service2, Req>(
self,
service: Service2,
) -> Handler<OnJoined<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_joined<Service2, Req>(
self,
service: Service2,
) -> Handler<OnJoined<Service2, Service1, Req>>where
Service2: Service<Req>,
JoinedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいJoinedPayload
(JoinedPayload,)
(State, JoinedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_left<Service2, Req>(
self,
service: Service2,
) -> Handler<OnLeft<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_left<Service2, Req>(
self,
service: Service2,
) -> Handler<OnLeft<Service2, Service1, Req>>where
Service2: Service<Req>,
LeftPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいLeftPayload
(LeftPayload,)
(State, LeftPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_message_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_message_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
MessageCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいMessageCreatedPayload
(MessageCreatedPayload,)
(State, MessageCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_message_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_message_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
MessageDeletedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいMessageDeletedPayload
(MessageDeletedPayload,)
(State, MessageDeletedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_message_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_message_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnMessageUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
MessageUpdatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいMessageUpdatedPayload
(MessageUpdatedPayload,)
(State, MessageUpdatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_direct_message_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_direct_message_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
DirectMessageCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいDirectMessageCreatedPayload
(DirectMessageCreatedPayload,)
(State, DirectMessageCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_direct_message_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_direct_message_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
DirectMessageDeletedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいDirectMessageDeletedPayload
(DirectMessageDeletedPayload,)
(State, DirectMessageDeletedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_direct_message_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_direct_message_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnDirectMessageUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
DirectMessageUpdatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいDirectMessageUpdatedPayload
(DirectMessageUpdatedPayload,)
(State, DirectMessageUpdatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_bot_message_stamps_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnBotMessageStampsUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_bot_message_stamps_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnBotMessageStampsUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
BotMessageStampsUpdatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいBotMessageStampsUpdatedPayload
(BotMessageStampsUpdatedPayload,)
(State, BotMessageStampsUpdatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_channel_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnChannelCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_channel_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnChannelCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
ChannelCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいChannelCreatedPayload
(ChannelCreatedPayload,)
(State, ChannelCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_channel_topic_changed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnChannelTopicChanged<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_channel_topic_changed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnChannelTopicChanged<Service2, Service1, Req>>where
Service2: Service<Req>,
ChannelTopicChangedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいChannelTopicChangedPayload
(ChannelTopicChangedPayload,)
(State, ChannelTopicChangedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
UserCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserCreatedPayload
(UserCreatedPayload,)
(State, UserCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_stamp_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnStampCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_stamp_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnStampCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
StampCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいStampCreatedPayload
(StampCreatedPayload,)
(State, StampCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_tag_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnTagAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_tag_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnTagAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
TagAddedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいTagAddedPayload
(TagAddedPayload,)
(State, TagAddedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_tag_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnTagRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_tag_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnTagRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
TagRemovedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいTagRemovedPayload
(TagRemovedPayload,)
(State, TagRemovedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_created<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupCreated<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupCreatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupCreatedPayload
(UserGroupCreatedPayload,)
(State, UserGroupCreatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupUpdatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupUpdatedPayload
(UserGroupUpdatedPayload,)
(State, UserGroupUpdatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_deleted<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupDeleted<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupDeletedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupDeletedPayload
(UserGroupDeletedPayload,)
(State, UserGroupDeletedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_member_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_member_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupMemberAddedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupMemberAddedPayload
(UserGroupMemberAddedPayload,)
(State, UserGroupMemberAddedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_member_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_member_updated<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberUpdated<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupMemberUpdatedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupMemberUpdatedPayload
(UserGroupMemberUpdatedPayload,)
(State, UserGroupMemberUpdatedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_member_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_member_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupMemberRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupMemberRemovedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupMemberRemovedPayload
(UserGroupMemberRemovedPayload,)
(State, UserGroupMemberRemovedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_admin_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupAdminAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_admin_added<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupAdminAdded<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupAdminAddedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupAdminAddedPayload
(UserGroupAdminAddedPayload,)
(State, UserGroupAdminAddedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Sourcepub fn on_user_group_admin_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupAdminRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
pub fn on_user_group_admin_removed<Service2, Req>(
self,
service: Service2,
) -> Handler<OnUserGroupAdminRemoved<Service2, Service1, Req>>where
Service2: Service<Req>,
UserGroupAdminRemovedPayload
をhandleするService
を登録します。
引数の型Service2
はService<Req>
traitを実装し、さらに以下の条件を満たす必要があります。
Clone
を実装しているReq
が次のうちいずれかと等しいUserGroupAdminRemovedPayload
(UserGroupAdminRemovedPayload,)
(State, UserGroupAdminRemovedPayload)
(State
に関してはHandler::with_state
を参照してください)
Service2::Response
が()
と等しいService2::Error
がInto<Box<dyn Error + Send + Sync + 'static>>
を実装している
Trait Implementations§
Source§impl<Srv, Body> Service<Request<Body>> for Handler<Srv>
impl<Srv, Body> Service<Request<Body>> for Handler<Srv>
Auto Trait Implementations§
impl<Service> Freeze for Handler<Service>where
Service: Freeze,
impl<Service> RefUnwindSafe for Handler<Service>where
Service: RefUnwindSafe,
impl<Service> Send for Handler<Service>where
Service: Send,
impl<Service> Sync for Handler<Service>where
Service: Sync,
impl<Service> Unpin for Handler<Service>where
Service: Unpin,
impl<Service> UnwindSafe for Handler<Service>where
Service: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, Request> ServiceExt<Request> for T
impl<T, Request> ServiceExt<Request> for T
Source§fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
fn ready(&mut self) -> Ready<'_, Self, Request>where
Self: Sized,
Source§fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>where
Self: Sized,
Source§fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
fn oneshot(self, req: Request) -> Oneshot<Self, Request>where
Self: Sized,
Service
, calling it with the provided request once it is ready.Source§fn and_then<F>(self, f: F) -> AndThen<Self, F>
fn and_then<F>(self, f: F) -> AndThen<Self, F>
poll_ready
method. Read moreSource§fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F>
poll_ready
method. Read moreSource§fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
fn map_err<F, Error>(self, f: F) -> MapErr<Self, F>
poll_ready
method. Read moreSource§fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
fn map_result<F, Response, Error>(self, f: F) -> MapResult<Self, F>
Result<Self::Response, Self::Error>
)
to a different value, regardless of whether the future succeeds or
fails. Read more