Use i32 instead of usize
This commit is contained in:
		
							parent
							
								
									b4d07aa1ae
								
							
						
					
					
						commit
						829e8ad36c
					
				| 
						 | 
				
			
			@ -42,7 +42,7 @@ pub async fn run(args: env::Args) {
 | 
			
		|||
                    _ => panic!("Got a weird error while creating dir: {}", err)
 | 
			
		||||
                }
 | 
			
		||||
            };
 | 
			
		||||
            let mut page_num: usize = 1;
 | 
			
		||||
            let mut page_num: i32 = 1;
 | 
			
		||||
            for page in sauce_info.images.pages {
 | 
			
		||||
                let file_ext = match page.t.as_str() {
 | 
			
		||||
                    "j" => ".jpg",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,7 +16,7 @@ pub async fn run(args: env::Args) {
 | 
			
		|||
        exit(1);
 | 
			
		||||
    }
 | 
			
		||||
    let client = reqwest::Client::new();
 | 
			
		||||
    let mut handles: Vec<JoinHandle<(structs::GalleryInfo, usize)>> = Vec::with_capacity(sauces.len());
 | 
			
		||||
    let mut handles: Vec<JoinHandle<(structs::GalleryInfo, i32)>> = Vec::with_capacity(sauces.len());
 | 
			
		||||
    for sauce in sauces {
 | 
			
		||||
        let cloned_client = client.clone();
 | 
			
		||||
        handles.push(tokio::spawn(async move {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,8 +10,8 @@ pub struct GalleryTitleInfo {
 | 
			
		|||
#[derive(Deserialize, Debug)]
 | 
			
		||||
pub struct GalleryImageInfo {
 | 
			
		||||
    pub t: String,
 | 
			
		||||
    pub w: usize,
 | 
			
		||||
    pub h: usize
 | 
			
		||||
    pub w: i32,
 | 
			
		||||
    pub h: i32
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[derive(Deserialize, Debug)]
 | 
			
		||||
| 
						 | 
				
			
			@ -23,24 +23,24 @@ pub struct GalleryImagesInfo {
 | 
			
		|||
 | 
			
		||||
#[derive(Deserialize, Debug)]
 | 
			
		||||
pub struct GalleryTagInfo {
 | 
			
		||||
    pub id: usize,
 | 
			
		||||
    pub id: i32,
 | 
			
		||||
    pub r#type: String,
 | 
			
		||||
    pub name: String,
 | 
			
		||||
    pub url: String,
 | 
			
		||||
    pub count: usize
 | 
			
		||||
    pub count: i32
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[derive(Deserialize, Debug)]
 | 
			
		||||
pub struct GalleryInfoSuccess {
 | 
			
		||||
    pub id: usize,
 | 
			
		||||
    pub id: i32,
 | 
			
		||||
    pub media_id: String,
 | 
			
		||||
    pub title: GalleryTitleInfo,
 | 
			
		||||
    pub images: GalleryImagesInfo,
 | 
			
		||||
    pub scanlator: String,
 | 
			
		||||
    pub upload_date: usize,
 | 
			
		||||
    pub upload_date: i32,
 | 
			
		||||
    pub tags: Vec<GalleryTagInfo>,
 | 
			
		||||
    pub num_pages: usize,
 | 
			
		||||
    pub num_favorites: usize
 | 
			
		||||
    pub num_pages: i32,
 | 
			
		||||
    pub num_favorites: i32
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[derive(Deserialize, Debug)]
 | 
			
		||||
| 
						 | 
				
			
			@ -58,6 +58,6 @@ pub enum GalleryInfo {
 | 
			
		|||
#[derive(Deserialize, Debug)]
 | 
			
		||||
pub struct SearchInfo {
 | 
			
		||||
    pub result: Vec<GalleryInfoSuccess>,
 | 
			
		||||
    pub num_pages: usize,
 | 
			
		||||
    pub per_page: usize
 | 
			
		||||
    pub num_pages: i32,
 | 
			
		||||
    pub per_page: i32
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										10
									
								
								src/utils.rs
								
								
								
								
							
							
						
						
									
										10
									
								
								src/utils.rs
								
								
								
								
							| 
						 | 
				
			
			@ -11,13 +11,13 @@ extern crate reqwest;
 | 
			
		|||
fn fix_gallery(body: &mut serde_json::Value) -> Result<(), serde_json::Error> {
 | 
			
		||||
    if body["id"].is_string() {
 | 
			
		||||
        body["id"] = serde_json::json!(
 | 
			
		||||
            body["id"].as_str().unwrap().parse::<usize>().unwrap()
 | 
			
		||||
            body["id"].as_str().unwrap().parse::<i32>().unwrap()
 | 
			
		||||
        );
 | 
			
		||||
    }
 | 
			
		||||
    Ok(())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pub async fn get_sauce_info(client: reqwest::Client, sauce: usize) -> Result<structs::GalleryInfo, reqwest::Error> {
 | 
			
		||||
pub async fn get_sauce_info(client: reqwest::Client, sauce: i32) -> Result<structs::GalleryInfo, reqwest::Error> {
 | 
			
		||||
    let mut uri = String::from("https://nhentai.net/api/gallery/");
 | 
			
		||||
    uri.push_str(&sauce.to_string());
 | 
			
		||||
    let resp = client.get(&uri)
 | 
			
		||||
| 
						 | 
				
			
			@ -56,10 +56,10 @@ pub async fn download_file(client: reqwest::Client, url: &str, file_name: &str)
 | 
			
		|||
    Ok(())
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pub fn get_arg_sauces(args: env::Args) -> Result<Vec<usize>, String> {
 | 
			
		||||
    let mut sauces: Vec<usize> = Vec::new();
 | 
			
		||||
pub fn get_arg_sauces(args: env::Args) -> Result<Vec<i32>, String> {
 | 
			
		||||
    let mut sauces: Vec<i32> = Vec::new();
 | 
			
		||||
    for sauce in args {
 | 
			
		||||
        let sauce: usize = match sauce.parse() {
 | 
			
		||||
        let sauce: i32 = match sauce.parse() {
 | 
			
		||||
                Ok(sauce) => sauce,
 | 
			
		||||
                Err(_) => {
 | 
			
		||||
                    return Err(format!("{} is not a number/sauce", sauce));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue