feat: Register skip and tail filter plugins
Co-authored-by: aider (openai/andrew/openrouter/deepseek/deepseek-chat-v3.1) <aider@aider.chat>
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
use super::{FilterPlugin, FilterOption};
|
use super::{FilterPlugin, FilterOption};
|
||||||
use std::io::{Result, Read, Write, BufRead};
|
use std::io::{Result, Read, Write, BufRead};
|
||||||
use crate::common::PIPESIZE;
|
use crate::common::PIPESIZE;
|
||||||
|
use crate::services::filter_service::register_filter_plugin;
|
||||||
|
|
||||||
pub struct SkipBytesFilter {
|
pub struct SkipBytesFilter {
|
||||||
remaining: usize,
|
remaining: usize,
|
||||||
@@ -135,3 +136,10 @@ impl FilterPlugin for SkipLinesFilter {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Register the plugin at module initialization time
|
||||||
|
#[ctor::ctor]
|
||||||
|
fn register_skip_filters() {
|
||||||
|
register_filter_plugin("skip_bytes", || Box::new(SkipBytesFilter::new(0)));
|
||||||
|
register_filter_plugin("skip_lines", || Box::new(SkipLinesFilter::new(0)));
|
||||||
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ use super::{FilterPlugin, FilterOption};
|
|||||||
use std::io::{Result, Read, Write, BufRead};
|
use std::io::{Result, Read, Write, BufRead};
|
||||||
use std::collections::VecDeque;
|
use std::collections::VecDeque;
|
||||||
use crate::common::PIPESIZE;
|
use crate::common::PIPESIZE;
|
||||||
|
use crate::services::filter_service::register_filter_plugin;
|
||||||
|
|
||||||
pub struct TailBytesFilter {
|
pub struct TailBytesFilter {
|
||||||
buffer: VecDeque<u8>,
|
buffer: VecDeque<u8>,
|
||||||
@@ -150,3 +151,10 @@ impl FilterPlugin for TailLinesFilter {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Register the plugin at module initialization time
|
||||||
|
#[ctor::ctor]
|
||||||
|
fn register_tail_filters() {
|
||||||
|
register_filter_plugin("tail_bytes", || Box::new(TailBytesFilter::new(0)));
|
||||||
|
register_filter_plugin("tail_lines", || Box::new(TailLinesFilter::new(0)));
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user