style: code fmt style
This commit is contained in:
@@ -247,13 +247,13 @@ fn main() -> std::io::Result<()> {
|
|||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
// test zone
|
// test zone
|
||||||
//TODO refactor
|
//TODO refactor
|
||||||
//todo implement 2001/11/01 3 getters !clement
|
//todo implement 2001/11/01 #3 getters !clement
|
||||||
//todo implement 2001/11/01 3 getters !thomas
|
//todo implement 2001/11/01 #3 getters !thomas
|
||||||
//fix implement 18/11/2001 getters
|
//fix implement 18/11/2001 getters !jht5945
|
||||||
//4
|
//4
|
||||||
//10/10/10
|
//10/10/10
|
||||||
fn test(){
|
fn test(){
|
||||||
todo!("implements getters");
|
todo!("implements getters");
|
||||||
}
|
}
|
||||||
|
|
||||||
//todo implement 2020/08/14 5 getters !clement
|
//todo implement 2020/08/14 #5 getters !clement
|
||||||
49
src/token.rs
49
src/token.rs
@@ -17,17 +17,15 @@ pub struct Token{
|
|||||||
|
|
||||||
impl Token {
|
impl Token {
|
||||||
pub fn new(file: String, line: usize, s: String, verbosity: i8) -> Token {
|
pub fn new(file: String, line: usize, s: String, verbosity: i8) -> Token {
|
||||||
// println!("{}", s);
|
println!(">>>>>>>>>>>{}", s);
|
||||||
let fields: Vec<&str>= s.split_whitespace().collect();
|
let fields: Vec<&str>= s.split_whitespace().collect();
|
||||||
let number_regex = Regex::new("\\b[1-9]\\b").unwrap();
|
let number_regex = Regex::new("#[0-9]").unwrap();
|
||||||
let date_regex = Regex::new("(\\d*/\\d*/\\d*)").unwrap();
|
let date_regex = Regex::new("(\\d+/\\d+/\\d+)").unwrap();
|
||||||
let member_regex = Regex::new("!\\w*").unwrap();
|
let member_regex = Regex::new("![\\w]+").unwrap();
|
||||||
if date_regex.is_match("5") {
|
if date_regex.is_match("5") {
|
||||||
panic!("regex");
|
panic!("regex");
|
||||||
}
|
}
|
||||||
// for i in &fields {
|
println!("///////////{:?}", fields);
|
||||||
// println!("{}", i);
|
|
||||||
// }
|
|
||||||
|
|
||||||
let mut t = Token {
|
let mut t = Token {
|
||||||
file,
|
file,
|
||||||
@@ -40,27 +38,23 @@ impl Token {
|
|||||||
verbosity,
|
verbosity,
|
||||||
};
|
};
|
||||||
|
|
||||||
for i in 0..fields.len() {
|
for (i, field) in fields.iter().enumerate() {
|
||||||
if i == 0 {
|
if i == 0 {
|
||||||
t.keyword = fields[0].to_string().to_lowercase();
|
t.keyword = field.to_lowercase();
|
||||||
} else if number_regex.is_match(fields[i]) {
|
} else if number_regex.is_match(field) {
|
||||||
t.priority = Some(fields[i].to_string());
|
t.priority = Some(field.chars().skip(1).collect::<String>());
|
||||||
} else if date_regex.is_match(fields[i]) {
|
} else if date_regex.is_match(field) {
|
||||||
let date : Vec<&str> = fields[i].split('/').collect();
|
let date: Vec<&str> = field.split('/').collect();
|
||||||
t.date = NaiveDate::from_ymd_opt(date[0].parse::<i32>().unwrap(), date[1].parse::<u32>().unwrap(), date[2].parse::<u32>().unwrap());
|
let year = date[0].parse::<i32>().unwrap();
|
||||||
// t.date = Some(fields[i].to_string());
|
let month = date[1].parse::<u32>().unwrap();
|
||||||
} else if member_regex.is_match(fields[i]) {
|
let day = date[2].parse::<u32>().unwrap();
|
||||||
let mut member = String::new(); //from(fields[i].clone()).chars().next().map(|c| &s[c.len_utf8()..]).unwrap();
|
t.date = NaiveDate::from_ymd_opt(year, month, day);
|
||||||
let it = fields[i].chars().skip(1);
|
} else if member_regex.is_match(field) {
|
||||||
for i in it {
|
t.member = Some(field.chars().skip(1).collect::<String>());
|
||||||
member.push(i);
|
|
||||||
}
|
|
||||||
|
|
||||||
t.member = Some(member);
|
|
||||||
} else {
|
} else {
|
||||||
t.comment = match t.comment {
|
t.comment = match t.comment {
|
||||||
None => Some(fields[i].to_string()),
|
None => Some(field.to_string()),
|
||||||
Some(comment) => Some(format!("{} {}", comment, fields[i])),
|
Some(comment) => Some(format!("{} {}", comment, field)),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -113,11 +107,8 @@ impl fmt::Display for Token {
|
|||||||
if let Some(comment) = &self.comment {
|
if let Some(comment) = &self.comment {
|
||||||
multiline_msg.push(format!("{}", comment.blue()));
|
multiline_msg.push(format!("{}", comment.blue()));
|
||||||
}
|
}
|
||||||
// if self.comment.is_some() {
|
|
||||||
// s = string_format!("{}{}\n".to_string(), s, self.comment.clone().unwrap().blue().to_string());
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
write!(f, "{}\n", multiline_msg.join("\n"))?;
|
write!(f, "{}\n", multiline_msg.join("\n"))?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user