Skip to main content

engine_step1_scanner

Function engine_step1_scanner 

Source
pub fn engine_step1_scanner(
    c: ValidTablePartConfig,
    workspace: &ValidWorkspaceConfig,
    patterns: &ValidPatternConfig,
) -> ValidResultMainTab
Expand description

[Step 1] Skaner - teraz przyjmuje konfiguratory zamiast surowych struktur Job

Examples found in repository?
examples/try-step2.rs (line 18)
3fn main() {
4	println!("=== TEST STEP 2 (ALPHA) ===\n");
5
6	// =========================================================================
7	// STEP 0: Inicjalizacja
8	// =========================================================================
9
10	let ws_cfg = job::ValidWorkspaceParse::parse_vec_as_config(["."]);
11	let pt_cfg = job::ValidPatternParse::parse_vec_as_config(Vec::<&str>::new(), None);
12	// let pt_cfg = job::ValidPatternParse::parse_vec_as_config::<[&str; 0]>([], None);
13
14	// =========================================================================
15	// STEP 1: Skanowanie i pobranie metadanych z dysku
16	// =========================================================================
17	let part_cfg = job::ValidTablePartParse::parse_vec_as_config(["md", "mf"]);
18	let raw_rows = job::engine_step1_scanner(part_cfg, &ws_cfg, &pt_cfg);
19
20	println!("Skanowanie zakończone. Zabrano wierszy (ValidResultMainRow): {}\n", raw_rows.rows.len());
21
22	// =========================================================================
23	// STEP 2: Formatowanie komórek
24	// =========================================================================
25
26	// Ustawiamy dość bogatą konfigurację, żeby przetestować wszystkie mechanizmy
27	let item_cfg =
28		job::ValidColumnItemParse::parse_vec_as_config(["list-tree", "name-show", "ws-show", "icons-lite"]).unwrap();
29
30	let cols_cfg = job::ValidTableColumnsParse::parse_vec_as_config(["date", "time", "size", "item", "path"]);
31
32	let date_cfg = job::ValidColumnDateParse::parse_vec_as_config(["default"]);
33	let time_cfg = job::ValidColumnTimeParse::parse_vec_as_config(["default"]);
34	let size_cfg = job::ValidColumnSizeParse::parse_vec_as_config(["dec"]);
35
36	let formatted_rows =
37		job::engine_step2_data_formater((&item_cfg, &cols_cfg), (&date_cfg, &time_cfg, &size_cfg), &raw_rows);
38
39	// =========================================================================
40	// WYDRUK KONTROLNY (Dla naszych oczu)
41	// =========================================================================
42	let sample_rows: Vec<_> = formatted_rows.into_iter().take(75).collect();
43
44	// Przekazujemy wiersze i konfigurację kolumn (żeby renderer wiedział, czym są komórki)
45	mock_render(&sample_rows, &cols_cfg);
46}