-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
use crate::data::{ | ||
DataSourceDescription, DataSourceInfo, EntryID, EntryIndex, EntryInfo, Field, ItemLink, | ||
Check warning on line 2 in src/strip_data.rs GitHub Actions / Check wasm32
Check warning on line 2 in src/strip_data.rs GitHub Actions / Check wasm32
Check warning on line 2 in src/strip_data.rs GitHub Actions / Check
Check warning on line 2 in src/strip_data.rs GitHub Actions / Check
Check failure on line 2 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 2 in src/strip_data.rs GitHub Actions / Clippy
Check warning on line 2 in src/strip_data.rs GitHub Actions / Test Suite
|
||
ItemUID, SlotMetaTile, SlotTile, SummaryTile, TileID, DataSource, | ||
}; | ||
|
||
pub struct StripDataSource<T: DataSource> { | ||
data_source: T, | ||
} | ||
|
||
|
||
impl<T: DataSource> StripDataSource<T> { | ||
pub fn new(data_source: T) -> Self { | ||
Self { | ||
data_source, | ||
} | ||
} | ||
} | ||
|
||
impl<T: DataSource> DataSource for StripDataSource<T> { | ||
fn fetch_description(&self) -> DataSourceDescription { | ||
self.data_source.fetch_description() | ||
} | ||
|
||
fn fetch_info(&self) -> DataSourceInfo { | ||
self.data_source.fetch_info() | ||
} | ||
|
||
fn fetch_summary_tile(&self, entry_id: &EntryID, tile_id: TileID, full: bool) -> SummaryTile { | ||
self.data_source.fetch_summary_tile(entry_id, tile_id, full) | ||
} | ||
|
||
fn fetch_slot_tile(&self, entry_id: &EntryID, tile_id: TileID, full: bool) -> SlotTile { | ||
self.data_source.fetch_slot_tile(entry_id, tile_id, full) | ||
} | ||
|
||
fn fetch_slot_meta_tile(&self, entry_id: &EntryID, tile_id: TileID, full: bool) -> SlotMetaTile { | ||
let mut tile = self.data_source | ||
.fetch_slot_meta_tile(entry_id, tile_id, full); | ||
for row in &mut tile.data.items { | ||
for item in row { | ||
item.title = "Redacted".to_string(); | ||
for field in item.fields { | ||
match field.1 { | ||
Field::I64(_) => {}, | ||
Field::U64(_) => {}, | ||
Field::String(x) => { *x = "Redacted".to_string(); }, | ||
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check
Check failure on line 46 in src/strip_data.rs GitHub Actions / Check
Check failure on line 46 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 46 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 46 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 46 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 46 in src/strip_data.rs GitHub Actions / Test Suite
Check failure on line 46 in src/strip_data.rs GitHub Actions / Test Suite
Check failure on line 46 in src/strip_data.rs GitHub Actions / Test Suite
|
||
Field::Interval(_) => {}, | ||
Field::ItemLink(ItemLink { title, .. }) => { *title = "Redacted".to_string(); }, | ||
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check wasm32
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check
Check failure on line 48 in src/strip_data.rs GitHub Actions / Check
Check failure on line 48 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 48 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 48 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 48 in src/strip_data.rs GitHub Actions / Clippy
Check failure on line 48 in src/strip_data.rs GitHub Actions / Test Suite
Check failure on line 48 in src/strip_data.rs GitHub Actions / Test Suite
Check failure on line 48 in src/strip_data.rs GitHub Actions / Test Suite
|
||
Field::Vec(_) => { todo!() }, | ||
Field::Empty => {}, | ||
} | ||
} | ||
} | ||
} | ||
tile | ||
} | ||
} |