28 lines
573 B
Rust
28 lines
573 B
Rust
|
|
use std::path::Path;
|
||
|
|
|
||
|
|
use serde::Serialize;
|
||
|
|
|
||
|
|
use crate::config::Config;
|
||
|
|
use crate::error::CustomError;
|
||
|
|
use crate::intermediate::ITarget;
|
||
|
|
|
||
|
|
#[derive(Debug, Serialize)]
|
||
|
|
#[serde(tag = "type")]
|
||
|
|
#[serde(rename = "target")]
|
||
|
|
pub(crate) struct RenderTarget {
|
||
|
|
id: String,
|
||
|
|
}
|
||
|
|
|
||
|
|
impl RenderTarget {
|
||
|
|
pub(crate) fn new<D: AsRef<Path>, F: AsRef<Path>>(
|
||
|
|
config: &Config,
|
||
|
|
output_directory: D,
|
||
|
|
output_file: F,
|
||
|
|
target: &ITarget,
|
||
|
|
) -> Result<RenderTarget, CustomError> {
|
||
|
|
Ok(RenderTarget {
|
||
|
|
id: target.id.clone(),
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|