Moins de lignes dans main.rs
, délégation de l'appel de parse
à struct Buffer
This commit is contained in:
parent
b77b887081
commit
9022d04ca9
2 changed files with 11 additions and 12 deletions
13
src/input.rs
13
src/input.rs
|
@ -1,5 +1,6 @@
|
|||
use std::io as stdio;
|
||||
use stdio::stdin;
|
||||
use crate::parser;
|
||||
|
||||
pub struct Buffer {
|
||||
buffer: String,
|
||||
|
@ -27,11 +28,11 @@ impl Buffer {
|
|||
}
|
||||
}
|
||||
|
||||
pub fn is_empty(&self) -> bool {
|
||||
self.buffer.is_empty()
|
||||
}
|
||||
|
||||
pub fn get_buffer(&self) -> &String {
|
||||
&self.buffer
|
||||
pub fn parse(&self) -> Option<Vec<String>> {
|
||||
if ! self.buffer.is_empty() {
|
||||
Some(parser::parse(&self.buffer))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
10
src/main.rs
10
src/main.rs
|
@ -7,17 +7,15 @@ mod parser;
|
|||
fn main() {
|
||||
let mut buffer = input::Buffer::new();
|
||||
let mut bytes_read: usize = 1;
|
||||
let mut command_line: String;
|
||||
let mut argv: Vec<String>;
|
||||
let mut argv: Option<Vec<String>>;
|
||||
|
||||
while bytes_read != 0 {
|
||||
output::print_ps1();
|
||||
bytes_read = buffer.read_line();
|
||||
|
||||
if ! buffer.is_empty() {
|
||||
command_line = buffer.get_buffer().to_string();
|
||||
argv = parser::parse(&command_line);
|
||||
println!("{:?}", argv);
|
||||
argv = buffer.parse();
|
||||
if argv.is_some() {
|
||||
println!("{:?}", argv.unwrap());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Reference in a new issue