Moved string matching to sqlite
Probably (definitely more efficient)
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
use clap::Parser;
|
||||
use scryfall_deser::find_matching_cards;
|
||||
use scryfall_deser::get_all_lowercase_card_names;
|
||||
use scryfall_deser::get_card_by_name;
|
||||
use scryfall_deser::get_local_cache_folder;
|
||||
@@ -55,26 +56,19 @@ fn main() {
|
||||
}
|
||||
search_string.pop();
|
||||
|
||||
// This section should be replaced with a SQL command
|
||||
let cards = get_all_lowercase_card_names();
|
||||
|
||||
let mut matching_cards = Vec::new();
|
||||
for card in cards {
|
||||
if card.contains(&search_string) {
|
||||
matching_cards.push(card.clone());
|
||||
}
|
||||
}
|
||||
let matching_cards = find_matching_cards(&search_string);
|
||||
dbg!(&matching_cards);
|
||||
|
||||
if matching_cards.is_empty() {
|
||||
// Do some distance checking stuff
|
||||
} else if matching_cards.len() == 1 {
|
||||
let card = get_card_by_name(&matching_cards[0], GetNameType::LowercaseName);
|
||||
let card = get_card_by_name(&matching_cards[0].name, GetNameType::LowercaseName);
|
||||
dbg!(card);
|
||||
} else {
|
||||
for card in matching_cards {
|
||||
println!(
|
||||
"{}",
|
||||
get_card_by_name(&card, GetNameType::LowercaseName)
|
||||
get_card_by_name(&card.lowercase_name, GetNameType::LowercaseName)
|
||||
.unwrap()
|
||||
.name
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user