pub struct ProManager { /* private fields */ }Expand description
Manages Pro features, trial, and license activation.
Implementations§
Source§impl ProManager
impl ProManager
Sourcepub fn get_status(&self) -> LicenseStatus
pub fn get_status(&self) -> LicenseStatus
Get the current license status.
Sourcepub fn start_trial(&self) -> KardoResult<LicenseStatus>
pub fn start_trial(&self) -> KardoResult<LicenseStatus>
Start a reverse trial (7 days, no credit card required).
Returns an error if a trial has already been started.
Sourcepub fn activate_license(&self, key: &str) -> KardoResult<LicenseStatus>
pub fn activate_license(&self, key: &str) -> KardoResult<LicenseStatus>
Activate a license key.
Validates the format (VV-XXXX-XXXX-XXXX-XXXX) and stores in DB.
Sourcepub fn is_feature_available(&self, feature: &ProFeature) -> bool
pub fn is_feature_available(&self, feature: &ProFeature) -> bool
Check if a specific Pro feature is available.
Available during active trial or with Pro license. Free tier gets only ScoreHistory.
Sourcepub fn device_fingerprint() -> String
pub fn device_fingerprint() -> String
Generate a device fingerprint (hash of hostname + username).
This is a simple fingerprint for basic device identification. Real cryptographic device binding comes later.
Auto Trait Implementations§
impl !Freeze for ProManager
impl !RefUnwindSafe for ProManager
impl Send for ProManager
impl !Sync for ProManager
impl Unpin for ProManager
impl UnsafeUnpin for ProManager
impl !UnwindSafe for ProManager
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
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