mirror of
https://github.com/ilyakooo0/helix.git
synced 2024-11-30 00:35:26 +03:00
clippy: Factor out a Completion type.
This commit is contained in:
parent
cbcacb1063
commit
698e4ddea4
@ -137,9 +137,10 @@ pub fn buffer_picker(views: &[View], current: usize) -> Picker<(Option<PathBuf>,
|
||||
}
|
||||
|
||||
pub mod completers {
|
||||
use std::{borrow::Cow, ops::RangeFrom};
|
||||
use crate::ui::prompt::Completion;
|
||||
use std::borrow::Cow;
|
||||
// TODO: we could return an iter/lazy thing so it can fetch as many as it needs.
|
||||
pub fn filename(input: &str) -> Vec<(RangeFrom<usize>, Cow<'static, str>)> {
|
||||
pub fn filename(input: &str) -> Vec<Completion> {
|
||||
// Rust's filename handling is really annoying.
|
||||
|
||||
use ignore::WalkBuilder;
|
||||
|
@ -4,13 +4,15 @@ use helix_core::Position;
|
||||
use helix_view::{Editor, Theme};
|
||||
use std::{borrow::Cow, ops::RangeFrom};
|
||||
|
||||
pub type Completion = (RangeFrom<usize>, Cow<'static, str>);
|
||||
|
||||
pub struct Prompt {
|
||||
prompt: String,
|
||||
pub line: String,
|
||||
cursor: usize,
|
||||
completion: Vec<(RangeFrom<usize>, Cow<'static, str>)>,
|
||||
completion: Vec<Completion>,
|
||||
completion_selection_index: Option<usize>,
|
||||
completion_fn: Box<dyn FnMut(&str) -> Vec<(RangeFrom<usize>, Cow<'static, str>)>>,
|
||||
completion_fn: Box<dyn FnMut(&str) -> Vec<Completion>>,
|
||||
callback_fn: Box<dyn FnMut(&mut Editor, &str, PromptEvent)>,
|
||||
}
|
||||
|
||||
@ -27,7 +29,7 @@ pub enum PromptEvent {
|
||||
impl Prompt {
|
||||
pub fn new(
|
||||
prompt: String,
|
||||
mut completion_fn: impl FnMut(&str) -> Vec<(RangeFrom<usize>, Cow<'static, str>)> + 'static,
|
||||
mut completion_fn: impl FnMut(&str) -> Vec<Completion> + 'static,
|
||||
callback_fn: impl FnMut(&mut Editor, &str, PromptEvent) + 'static,
|
||||
) -> Prompt {
|
||||
Prompt {
|
||||
|
Loading…
Reference in New Issue
Block a user