Skip to main content

FeatureProfile

Enum FeatureProfile 

Source
pub enum FeatureProfile {
    GaLock,
    Production,
    All,
}
Expand description

Known feature profiles for runtime capability selection.

Variants§

§

GaLock

Conservative GA-lock set (legacy compatibility mode).

§

Production

Standard production profile used for normal runtime operation.

§

All

All in-tree capabilities, useful for test matrices and snapshots.

Implementations§

Source§

impl FeatureProfile

Source

pub const fn from_kind(profile: FeatureProfileKind) -> FeatureProfile

Convert canonical profile IDs to FeatureProfile values.

Source

pub const fn from_ga_lock_enabled(ga_lock_enabled: bool) -> FeatureProfile

Build the profile from an explicit GA-lock toggle.

Source

pub const fn current() -> FeatureProfile

Resolve the active policy from compiled crate features.

This keeps all consumers using a single profile source and reduces duplication where capability selection previously hardcoded cfg!(feature = "lsp-ga-lock") at each call-site.

Source

pub fn from_cli_argument(raw_profile: &str) -> FeatureProfile

Resolve a user-provided profile, falling back to current() on invalid input.

This API is intended for CLI and editor integration where users may provide explicit profile controls at runtime.

Source

pub fn parse_profile(raw_profile: &str) -> Option<FeatureProfile>

Parse a CLI argument using the same normalization rules as editor and CLI inputs.

Source

pub fn build_flags(self) -> BuildFlags

Convert this policy into base BuildFlags.

Source

pub fn runtime_flags(self, has_perltidy: bool) -> BuildFlags

Convert this policy into runtime BuildFlags that include per-tool availability effects.

Source

pub fn advertised_features(self) -> AdvertisedFeatures

Convert this policy into server advertised features.

Source

pub fn runtime_advertised_features( self, has_perltidy: bool, ) -> AdvertisedFeatures

Convert this policy into advertised features with runtime tooling checks.

Source

pub const fn as_str(self) -> &'static str

Return the user-facing CLI/profile display label for this profile.

Source

pub const fn supported_cli_profiles() -> &'static [&'static str]

Return every supported CLI token accepted by FeatureProfile::parse_profile.

Source

pub const fn all() -> &'static [FeatureProfile]

Return all canonical profiles in declaration order.

Trait Implementations§

Source§

impl Clone for FeatureProfile

Source§

fn clone(&self) -> FeatureProfile

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for FeatureProfile

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl PartialEq for FeatureProfile

Source§

fn eq(&self, other: &FeatureProfile) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for FeatureProfile

Source§

impl Eq for FeatureProfile

Source§

impl StructuralPartialEq for FeatureProfile

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.