#[non_exhaustive]pub struct SettleContext<'a> {
pub payload: &'a PaymentPayload<Value, Value>,
pub requirements: &'a PaymentRequirements,
pub response: &'a SettleResponse,
pub resource_url: Option<&'a str>,
pub advertised: Option<&'a Extensions>,
}Expand description
Context passed to Extension::on_settle.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.payload: &'a PaymentPayload<Value, Value>Decoded payment payload.
requirements: &'a PaymentRequirementsMatched requirements.
response: &'a SettleResponseIn-flight settle response.
resource_url: Option<&'a str>Resource URL from the 402 / request, when known.
advertised: Option<&'a Extensions>402 advertised extensions (declaration + enriched info).
Implementations§
Source§impl<'a> SettleContext<'a>
impl<'a> SettleContext<'a>
Sourcepub const fn new(
payload: &'a PaymentPayload<Value, Value>,
requirements: &'a PaymentRequirements,
response: &'a SettleResponse,
) -> Self
pub const fn new( payload: &'a PaymentPayload<Value, Value>, requirements: &'a PaymentRequirements, response: &'a SettleResponse, ) -> Self
Constructs a settle context.
Sourcepub const fn with_resource_url(self, resource_url: &'a str) -> Self
pub const fn with_resource_url(self, resource_url: &'a str) -> Self
Sets the 402/request resource URL.
Sourcepub const fn with_advertised(self, advertised: &'a Extensions) -> Self
pub const fn with_advertised(self, advertised: &'a Extensions) -> Self
Sets advertised 402 extensions.
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for SettleContext<'a>
impl<'a> RefUnwindSafe for SettleContext<'a>
impl<'a> Send for SettleContext<'a>
impl<'a> Sync for SettleContext<'a>
impl<'a> Unpin for SettleContext<'a>
impl<'a> UnsafeUnpin for SettleContext<'a>
impl<'a> UnwindSafe for SettleContext<'a>
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
Mutably borrows from an owned value. Read more