Skip to main content

nu_command/filesystem/idx/
idx_.rs

1use nu_engine::{command_prelude::*, get_full_help};
2
3#[derive(Clone)]
4pub struct Idx;
5
6impl Command for Idx {
7    fn name(&self) -> &str {
8        "idx"
9    }
10
11    fn signature(&self) -> Signature {
12        Signature::build("idx")
13            .input_output_types(vec![(Type::Nothing, Type::String)])
14            .category(Category::FileSystem)
15    }
16
17    fn description(&self) -> &str {
18        "Manage in-memory file index state."
19    }
20
21    fn extra_description(&self) -> &str {
22        "Use one of the subcommands: init, status, find, search, export, import, drop, dirs, files. Watch mode keeps the index warm as files change; disable it when you only need a snapshot of the current tree."
23    }
24
25    fn run(
26        &self,
27        engine_state: &EngineState,
28        stack: &mut Stack,
29        call: &Call,
30        _input: PipelineData,
31    ) -> Result<PipelineData, ShellError> {
32        Ok(Value::string(
33            get_full_help(self, engine_state, stack, call.head),
34            call.head,
35        )
36        .into_pipeline_data())
37    }
38}