Skip to main content

CommandsGenerator

Struct CommandsGenerator 

Source
pub struct CommandsGenerator;
Expand description

gen:commands. Walks the CommandRegistry and emits one RawCandidate per registered CommandSpec. Filtering is deferred to the matcher; the generator returns the full set every time the cache misses.

Delimiter-form commands (ex:substitute, ex:global – SurfaceForm::Delimiter) are excluded: the user types those via :s/.../.../, :g/.../.../, :v/.../.../. Surfacing them as completion candidates is misleading because typing :ex:global would error with “use the delimiter form” – the keyword form is intentionally a hard-error redirect (DESIGN.md §B.2). They remain reachable through :describe-command / :apropos for introspection.

Trait Implementations§

Source§

impl CandidateGenerator for CommandsGenerator

Source§

fn generate(&self, ctx: &GenerateContext<'_>) -> Vec<RawCandidate>

Source§

fn cache_key(&self, ctx: &GenerateContext<'_>) -> Option<CacheKey>

Optional cache key. When two contexts produce the same Some(key), the pipeline serves the second from cache. The query (prefix) is implicitly part of the key only if the generator includes it – many generators key on a registry version (cache covers all queries until the registry changes) and let the matcher do the per-query filtering.
Source§

fn cache_ttl(&self) -> Duration

Soft TTL for cache entries. After elapsing, the entry is regenerated on next access. Defaults to no expiry.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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, 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.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more