Enum SwaptionUnderlyingTemplate
#[non_exhaustive]pub enum SwaptionUnderlyingTemplate {
Ois(OisTemplate),
Vanilla(SwapTemplate),
}Expand description
The swap a SwaptionTemplate writes its option on.
A deliberately narrow two-arm enum rather than AnyTemplate: a swaption is
an option on a swap, and admitting the full union would let a swaption be
declared on a CDS or a bond template — nonsense the type system should refuse.
The two arms mirror the two swap types
SwaptionUnderlying
is implemented for.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Ois(OisTemplate)
An OIS (fixed vs compounded RFR) underlying — the post-LIBOR market.
Vanilla(SwapTemplate)
A vanilla IBOR (fixed vs term float) underlying.
Trait Implementations§
§impl Clone for SwaptionUnderlyingTemplate
impl Clone for SwaptionUnderlyingTemplate
§fn clone(&self) -> SwaptionUnderlyingTemplate
fn clone(&self) -> SwaptionUnderlyingTemplate
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for SwaptionUnderlyingTemplate
impl !UnwindSafe for SwaptionUnderlyingTemplate
impl Freeze for SwaptionUnderlyingTemplate
impl Send for SwaptionUnderlyingTemplate
impl Sync for SwaptionUnderlyingTemplate
impl Unpin for SwaptionUnderlyingTemplate
impl UnsafeUnpin for SwaptionUnderlyingTemplate
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