main: build processed_dir path outside of RegionProcessor::new()

This commit is contained in:
Matthias Schiffer 2023-03-01 19:17:50 +01:00
parent ea604b88f2
commit a2ba7e4738
Signed by: neocturne
GPG key ID: 16EF3F64CB201D9C

View file

@ -19,16 +19,16 @@ struct Args {
type RegionCoords = (i32, i32);
/// Type with methods for processing the regions of a Minecraft save directory
struct RegionProcessor {
struct RegionProcessor<'a> {
block_types: resource::BlockTypeMap,
processed_dir: PathBuf,
processed_dir: &'a Path,
}
impl RegionProcessor {
fn new(output_dir: &Path) -> Self {
impl<'a> RegionProcessor<'a> {
fn new(processed_dir: &'a Path) -> Self {
RegionProcessor {
block_types: resource::block_types(),
processed_dir: [output_dir, Path::new("processed")].iter().collect(),
processed_dir,
}
}
@ -148,8 +148,9 @@ fn main() -> Result<()> {
let args = Args::parse();
let region_dir: PathBuf = [&args.input_dir, Path::new("region")].iter().collect();
let processed_dir: PathBuf = [&args.output_dir, Path::new("processed")].iter().collect();
let region_processor = RegionProcessor::new(&args.output_dir);
let region_processor = RegionProcessor::new(&processed_dir);
region_processor.process_region_dir(&region_dir)?;
Ok(())