use serde::Deserialize; use std::fs::File; use std::io::Read; #[derive(Debug, Deserialize)] #[allow(dead_code)] // evita os warnings de que non se le o campo pub struct Object { pub tag: String, // tamén é o nome do arquivo, mentras non se implementa bbdd pub nombre: String, pub descripcion: String, } // get_object le o arquivo do obxeto e devolve o json pub fn get_object(tag: String) -> Object { let dir = "objects"; let path = format!("{}/{}.json", dir, tag); let mut file = File::open(path).expect("Obxeto non atopado."); let mut data = String::new(); file.read_to_string(&mut data).expect("Error durante a lectura do obxeto."); let object: Object = serde_json::from_str(&data).expect("JSON was not well-formatted"); object }