From e18f954cb03634613fc902cb9ddcd16250854398 Mon Sep 17 00:00:00 2001 From: rick Date: Mon, 10 Apr 2023 23:16:38 +0200 Subject: [PATCH] add line address, change u32 for usize in Address remove one useless print too --- src/enums.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/enums.rs b/src/enums.rs index 29e630b..6b9e2f7 100644 --- a/src/enums.rs +++ b/src/enums.rs @@ -1,17 +1,18 @@ +use std::str::FromStr; + #[derive(Debug)] pub enum Address { Actual, Last, - Line(u32), - FromStartTo(u32), - FromToEnd(u32), - FromTo(u32, u32), + Line(usize), + FromStartTo(usize), + FromToEnd(usize), + FromTo(usize, usize), Null, } impl Address { pub fn is_null(&self) -> bool { - println!("{:?}", self); match self { Self::Null => true, _ => false, @@ -26,6 +27,8 @@ pub fn parse_address(addr: &str) -> Address { if addr.is_empty() { Address::Actual + } else if let Ok(l) = usize::from_str(addr) { + Address::Line(l) } else { match addr { "." => Address::Actual, @@ -37,8 +40,6 @@ pub fn parse_address(addr: &str) -> Address { #[derive(Debug)] pub enum Command { - ChangeAddr(Address), - Append(Address), Insert(Address), Change(Address),