text_document_search/
dtos.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6pub struct FindTextDto {
7 pub query: String,
8 pub case_sensitive: bool,
9 pub whole_word: bool,
10 pub use_regex: bool,
11 pub search_backward: bool,
12 pub start_position: i64,
13}
14#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
15pub struct FindResultDto {
16 pub found: bool,
17 pub position: i64,
18 pub length: i64,
19}
20#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
21pub struct FindAllDto {
22 pub query: String,
23 pub case_sensitive: bool,
24 pub whole_word: bool,
25 pub use_regex: bool,
26}
27#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
28pub struct FindAllResultDto {
29 pub positions: Vec<i64>,
30 pub lengths: Vec<i64>,
31 pub count: i64,
32}
33#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
34pub struct ReplaceTextDto {
35 pub query: String,
36 pub replacement: String,
37 pub case_sensitive: bool,
38 pub whole_word: bool,
39 pub use_regex: bool,
40 pub replace_all: bool,
41}
42#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
43pub struct ReplaceResultDto {
44 pub replacements_count: i64,
45 pub skipped_cross_block: i64,
47}