This commit is contained in:
kdeng00
2023-08-26 23:41:42 -04:00
parent 8441a05a98
commit 109826d1e3
2 changed files with 12 additions and 43 deletions
+12 -41
View File
@@ -1,15 +1,13 @@
pub mod parser {
use std::fs::File;
use std::io::{self, BufRead, BufReader};
use std::collections::HashSet;
// use serde::{Serialize, Deserialize};
use serde::Serialize;
use serde::Deserialize;
// use std::fs::File;
use std::fs::File;
use std::io::{BufRead, BufReader};
use std::io::prelude::*;
use serde::Deserialize;
use serde::Serialize;
#[derive(Clone, Deserialize, Serialize)]
pub struct SomeObject {
pub value: String
@@ -21,10 +19,6 @@ pub mod parser {
}
impl NumberParser {
pub fn prompt(&self) {
println!("Hello!")
}
pub fn filedump(&self) -> Vec<SomeObject> {
let mut objs: Vec<SomeObject> = Vec::new();
@@ -35,9 +29,7 @@ pub mod parser {
value: phonenumber
};
if !myobj.value.is_empty() {
// println!("{}", myobj.value);
objs.push(myobj);
}
}
@@ -50,16 +42,8 @@ pub mod parser {
pub fn updatevalues(&self, vals: &Vec<SomeObject>) -> Vec<SomeObject> {
let mut updated: Vec<SomeObject> = Vec::new();
let mut remove_chars: Vec<char> = Vec::new();
remove_chars.push(')');
remove_chars.push('(');
remove_chars.push(' ');
remove_chars.push('-');
let mut i: i32 = 0;
// let prefix: String = String::from("+1");
for a in vals {
println!("Iter {}", i);
@@ -69,7 +53,7 @@ pub mod parser {
continue;
}
let mut pars = self.remove_some_data(&parsed, &remove_chars);
let pars = self.remove_some_data(&parsed);
parsed.clear();
parsed = pars;
@@ -89,17 +73,12 @@ pub mod parser {
return updated;
}
pub fn removedups(&self, mut vals: &Vec<SomeObject>) -> Vec<SomeObject> {
println!("Hi");
// let mut tmp: Vec<String> = Vec::new();
pub fn removedups(&self, vals: &Vec<SomeObject>) -> Vec<SomeObject> {
let mut tmp: HashSet<String> = HashSet::new();
//v.retain(|e| set.insert(e.clone()));
let mut mm: Vec<SomeObject> = Vec::new();
mm = vals.clone();
mm.clone_from(vals);
mm.retain(|e| tmp.insert(e.value.clone()));
// vals.clear();
// vals.clear();
let mut updated: Vec<SomeObject> = Vec::new();
for t in tmp {
@@ -110,9 +89,6 @@ pub mod parser {
updated.push(so);
}
// for item in vals {
// tmp.push(item.value.clone());
// }
return updated
}
pub fn print_values(&self, vals: &Vec<SomeObject>) {
@@ -131,12 +107,12 @@ pub mod parser {
}
fn read_lines(&self, filename: &str) -> std::io::Result<std::io::Lines<std::io::BufReader<std::fs::File>>> {
let file = std::fs::File::open(filename)?;
Ok(std::io::BufReader::new(file).lines())
fn read_lines(&self, filename: &str) -> std::io::Result<std::io::Lines<BufReader<File>>> {
let file = File::open(filename)?;
Ok(BufReader::new(file).lines())
}
fn remove_some_data(&self, unparsed: &String, remove_chars: &Vec<char>) -> String {
fn remove_some_data(&self, unparsed: &String) -> String {
println!("Unparsed: {}", unparsed);
let mut parsed: String = String::new();
@@ -156,17 +132,12 @@ pub mod parser {
fn add_prefix(&self, raw: String) -> String {
let mut mychars = raw.chars().clone();
println!("add_prefix");
let first_char: char = mychars.nth(0).clone().unwrap();
let second_char: char = mychars.nth(1).clone().unwrap();
println!("add_prefix");
let last_char_index = raw.len() - 1;
println!("Size {} last index {}", raw.len(), last_char_index);
// let last_char: char = mychars.nth(last_char_index).clone().unwrap();
println!("add_prefix");
let mut parsed: String = raw.clone();
if first_char == '1' {