The CLI frontend to a gist server written in Rust
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1234567891011121314151617181920212223242526272829
  1. use clap::ArgMatches;
  2. use std::fs;
  3. use std::io;
  4. use crate::client::create_gist;
  5. pub fn new_gist(matches: &ArgMatches) -> io::Result<()> {
  6. let title = matches.value_of("title").unwrap();
  7. let input = matches.value_of("file");
  8. let filetype = matches.value_of("filetype");
  9. let mut rdr: Box<io::Read> = match input {
  10. Some(file) => Box::new(fs::File::open(file)?),
  11. None => Box::new(io::stdin()),
  12. };
  13. let mut body = String::new();
  14. rdr.read_to_string(&mut body)?;
  15. match create_gist(title, &body, filetype) {
  16. Ok(resp) => println!(
  17. "Success! Your new gist is available at http://localhost:8000/gists/{}",
  18. resp.id
  19. ),
  20. Err(err) => println!("{}", err),
  21. }
  22. Ok(())
  23. }