pub struct UpdatePlanArgs {
pub name: Option<String>,
pub active: Option<bool>,
pub price_usdc: Option<u64>,
pub period_secs: Option<u64>,
pub grace_secs: Option<u64>,
}Expand description
Arguments for updating a subscription plan
Fields§
§name: Option<String>New plan display name (will be padded to 32 bytes)
active: Option<bool>Whether plan accepts new subscriptions
price_usdc: Option<u64>New price in USDC microlamports (affects only new subscriptions)
period_secs: Option<u64>New subscription period in seconds (with validation)
grace_secs: Option<u64>New grace period for renewals in seconds (with validation)
Implementations§
Source§impl UpdatePlanArgs
impl UpdatePlanArgs
Sourcepub const fn with_active(self, active: bool) -> Self
pub const fn with_active(self, active: bool) -> Self
Set the plan active status
Sourcepub const fn with_price_usdc(self, price_usdc: u64) -> Self
pub const fn with_price_usdc(self, price_usdc: u64) -> Self
Set the plan price
Sourcepub const fn with_period_secs(self, period_secs: u64) -> Self
pub const fn with_period_secs(self, period_secs: u64) -> Self
Set the plan period
Sourcepub const fn with_grace_secs(self, grace_secs: u64) -> Self
pub const fn with_grace_secs(self, grace_secs: u64) -> Self
Set the plan grace period
Sourcepub const fn has_updates(&self) -> bool
pub const fn has_updates(&self) -> bool
Check if any fields are set for update
Sourcepub fn name_bytes(&self) -> Option<[u8; 32]>
pub fn name_bytes(&self) -> Option<[u8; 32]>
Convert name string to padded 32-byte array if present
Trait Implementations§
Source§impl BorshDeserialize for UpdatePlanArgswhere
Option<String>: BorshDeserialize,
Option<bool>: BorshDeserialize,
Option<u64>: BorshDeserialize,
impl BorshDeserialize for UpdatePlanArgswhere
Option<String>: BorshDeserialize,
Option<bool>: BorshDeserialize,
Option<u64>: BorshDeserialize,
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for UpdatePlanArgs
impl BorshSerialize for UpdatePlanArgs
Source§impl Clone for UpdatePlanArgs
impl Clone for UpdatePlanArgs
Source§fn clone(&self) -> UpdatePlanArgs
fn clone(&self) -> UpdatePlanArgs
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for UpdatePlanArgs
impl Debug for UpdatePlanArgs
Source§impl Default for UpdatePlanArgs
impl Default for UpdatePlanArgs
Source§impl<'de> Deserialize<'de> for UpdatePlanArgs
impl<'de> Deserialize<'de> for UpdatePlanArgs
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for UpdatePlanArgs
impl PartialEq for UpdatePlanArgs
Source§impl Serialize for UpdatePlanArgs
impl Serialize for UpdatePlanArgs
impl Eq for UpdatePlanArgs
impl StructuralPartialEq for UpdatePlanArgs
Auto Trait Implementations§
impl Freeze for UpdatePlanArgs
impl RefUnwindSafe for UpdatePlanArgs
impl Send for UpdatePlanArgs
impl Sync for UpdatePlanArgs
impl Unpin for UpdatePlanArgs
impl UnwindSafe for UpdatePlanArgs
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more