#[non_exhaustive]pub enum SubscriptionTier {
Academic,
Explorer,
Accelerator,
Enterprise,
Custom,
}Expand description
Platform subscription tiers with monthly pricing (cents).
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.
Academic
$250/mo — academic labs, .edu email required
Explorer
$500/mo — single program, 3 users, basic tools
Accelerator
$2,500/mo — 5 programs, 10 users, full computational suite
Enterprise
$10,000/mo — unlimited programs, 50 users, dedicated support
Custom
Negotiated — pharma innovation units, large biotechs
Implementations§
Source§impl SubscriptionTier
impl SubscriptionTier
Sourcepub fn monthly_price_cents(&self) -> u64
pub fn monthly_price_cents(&self) -> u64
Monthly base price in cents.
Sourcepub fn annual_price_cents(&self) -> u64
pub fn annual_price_cents(&self) -> u64
Annual price with 16.7% discount (10 months for 12).
Sourcepub fn max_programs(&self) -> Option<u32>
pub fn max_programs(&self) -> Option<u32>
Maximum number of programs allowed.
Sourcepub fn storage_bytes(&self) -> u64
pub fn storage_bytes(&self) -> u64
Storage allocation in bytes.
Sourcepub fn max_virtual_screens_per_month(&self) -> Option<u32>
pub fn max_virtual_screens_per_month(&self) -> Option<u32>
Maximum virtual screens per month.
Sourcepub fn has_api_access(&self) -> bool
pub fn has_api_access(&self) -> bool
Whether this tier has API access.
Sourcepub fn sla_uptime_bps(&self) -> u32
pub fn sla_uptime_bps(&self) -> u32
SLA uptime percentage (basis points, e.g., 9950 = 99.50%).
Sourcepub fn includes(&self, required_tier: &SubscriptionTier) -> bool
pub fn includes(&self, required_tier: &SubscriptionTier) -> bool
Check if this tier includes a feature available at required_tier.
Trait Implementations§
Source§impl Clone for SubscriptionTier
impl Clone for SubscriptionTier
Source§fn clone(&self) -> SubscriptionTier
fn clone(&self) -> SubscriptionTier
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 SubscriptionTier
impl Debug for SubscriptionTier
Source§impl<'de> Deserialize<'de> for SubscriptionTier
impl<'de> Deserialize<'de> for SubscriptionTier
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 Hash for SubscriptionTier
impl Hash for SubscriptionTier
Source§impl PartialEq for SubscriptionTier
impl PartialEq for SubscriptionTier
Source§impl Serialize for SubscriptionTier
impl Serialize for SubscriptionTier
impl Copy for SubscriptionTier
impl Eq for SubscriptionTier
impl StructuralPartialEq for SubscriptionTier
Auto Trait Implementations§
impl Freeze for SubscriptionTier
impl RefUnwindSafe for SubscriptionTier
impl Send for SubscriptionTier
impl Sync for SubscriptionTier
impl Unpin for SubscriptionTier
impl UnsafeUnpin for SubscriptionTier
impl UnwindSafe for SubscriptionTier
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