#[repr(u32)]pub enum FeatureManagementError {
Show 18 variants
Unauthorized = 0,
InvalidFeatureName = 1,
FeatureNotFound = 2,
InvalidTimeRange = 3,
SerializationError = 4,
DeserializationError = 5,
InvalidInstructionData = 6,
InternalError = 7,
DuplicateFeature = 8,
InvalidStorageAccount = 9,
AlreadyInitialized = 10,
NotInitialized = 11,
TimeOutOfRange = 12,
StickyCannotBecomeWindowed = 13,
StickyStartTimeBackward = 14,
EntryFrozen = 15,
StickyEntryNotRemovable = 16,
MaxFeatureCountExceeded = 17,
}Expand description
Errors that can be returned by the Feature Management Program
Error codes are explicitly assigned to ensure stability across versions. Do not reorder variants or change their discriminant values.
Variants§
Unauthorized access - signature verification failed
InvalidFeatureName = 1
Invalid feature name (empty or too long)
FeatureNotFound = 2
Feature not found
InvalidTimeRange = 3
Invalid time range (start time >= end time)
SerializationError = 4
Serialization error
DeserializationError = 5
Deserialization error
InvalidInstructionData = 6
Invalid instruction data
InternalError = 7
Internal error (e.g., mutex lock failure)
DuplicateFeature = 8
Duplicate feature in modification list
InvalidStorageAccount = 9
Invalid storage account (not the expected PDA)
AlreadyInitialized = 10
Storage account already initialized
NotInitialized = 11
Storage account not initialized
TimeOutOfRange = 12
start_time_ms or end_time_ms exceeds the sanity cap (MAX_TIMESTAMP_MS).
StickyCannotBecomeWindowed = 13
Existing sticky entry would become windowed (caller passed
Some(end_time_ms) over an existing None).
StickyStartTimeBackward = 14
Sticky entry’s start_time_ms would move backwards.
EntryFrozen = 15
Existing entry is in its active phase; modification rejected.
StickyEntryNotRemovable = 16
Attempted to remove an existing sticky entry.
MaxFeatureCountExceeded = 17
Maximum feature count exceeded.
Trait Implementations§
Source§impl Clone for FeatureManagementError
impl Clone for FeatureManagementError
Source§fn clone(&self) -> FeatureManagementError
fn clone(&self) -> FeatureManagementError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for FeatureManagementError
impl Debug for FeatureManagementError
Source§impl From<FeatureManagementError> for InstructionError
impl From<FeatureManagementError> for InstructionError
Source§fn from(e: FeatureManagementError) -> Self
fn from(e: FeatureManagementError) -> Self
Source§impl From<FeatureManagementError> for ProgramError
impl From<FeatureManagementError> for ProgramError
Source§fn from(e: FeatureManagementError) -> Self
fn from(e: FeatureManagementError) -> Self
Source§impl PartialEq for FeatureManagementError
impl PartialEq for FeatureManagementError
Source§fn eq(&self, other: &FeatureManagementError) -> bool
fn eq(&self, other: &FeatureManagementError) -> bool
self and other values to be equal, and is used by ==.