pub trait SgRequestExt {
// Required methods
fn with_reflect(&mut self);
fn reflect_mut(&mut self) -> &mut Reflect;
fn reflect(&self) -> &Reflect;
fn get_redis_client_by_gateway_name(&self) -> Option<RedisClient>;
fn extract<M>(&self) -> M
where M: Extract;
fn try_extract<M>(&self) -> Option<M>
where M: OptionalExtract;
fn inject<I>(&mut self, i: &I) -> Result<(), Box<dyn Error + Sync + Send>>
where I: Inject;
fn defer_call<F>(&mut self, f: F)
where F: FnOnce(Request<SgBody>) -> Request<SgBody> + Send + 'static;
fn path_iter(&self) -> PathIter<'_>;
fn query_kv_iter(&self) -> Option<QueryKvIter<'_>>;
}Expand description
Provides extension methods for Request.
Required Methods§
fn with_reflect(&mut self)
fn reflect_mut(&mut self) -> &mut Reflect
fn reflect(&self) -> &Reflect
fn get_redis_client_by_gateway_name(&self) -> Option<RedisClient>
fn extract<M>(&self) -> Mwhere
M: Extract,
fn try_extract<M>(&self) -> Option<M>where
M: OptionalExtract,
Sourcefn inject<I>(&mut self, i: &I) -> Result<(), Box<dyn Error + Sync + Send>>where
I: Inject,
fn inject<I>(&mut self, i: &I) -> Result<(), Box<dyn Error + Sync + Send>>where
I: Inject,
§Errors
If the injection fails.
fn defer_call<F>(&mut self, f: F)
fn path_iter(&self) -> PathIter<'_>
fn query_kv_iter(&self) -> Option<QueryKvIter<'_>>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl SgRequestExt for Request<SgBody>
impl SgRequestExt for Request<SgBody>
Source§fn reflect_mut(&mut self) -> &mut Reflect
fn reflect_mut(&mut self) -> &mut Reflect
Get a mutable reference to the reflect extension.
§Panics
Panics if the reflect extension is not found. If you are using a request created by spacegate, this should never happen.
Source§fn reflect(&self) -> &Reflect
fn reflect(&self) -> &Reflect
Get a reference to the reflect extension.
§Panics
Panics if the reflect extension is not found. If you are using a request created by spacegate, this should never happen.
Source§fn with_reflect(&mut self)
fn with_reflect(&mut self)
Add a reflect extension to the request if it does not exist.
Source§fn get_redis_client_by_gateway_name(&self) -> Option<RedisClient>
fn get_redis_client_by_gateway_name(&self) -> Option<RedisClient>
Get a redis client by the extension::GatewayName, which would exist once the request had entered some gateway.
Source§fn try_extract<M>(&self) -> Option<M>where
M: OptionalExtract,
fn try_extract<M>(&self) -> Option<M>where
M: OptionalExtract,
Try to extract a value from the request.
Source§fn inject<I>(&mut self, i: &I) -> Result<(), Box<dyn Error + Sync + Send>>where
I: Inject,
fn inject<I>(&mut self, i: &I) -> Result<(), Box<dyn Error + Sync + Send>>where
I: Inject,
Inject some data into the request.
Source§fn defer_call<F>(&mut self, f: F)
fn defer_call<F>(&mut self, f: F)
Defer a call to the request. The call will be executed before the request has been sent to the backend.