pub mod answers_sf1;
pub mod queries;
pub struct QueryAndAnswer(
&'static str, &'static str, );
impl QueryAndAnswer {
pub fn new(num: i32, scale_factor: f64) -> Result<Self, String> {
match (num, scale_factor) {
(1..=22, 1.) => Ok(QueryAndAnswer(
queries::query(num).unwrap(),
answers_sf1::answer(num).unwrap(),
)),
_ => Err(format!("Invalid TPC-H query number: {} the answers are only available for queries (1 to 22) and a scale factor of 1.0", num)),
}
}
pub fn query(&self) -> &str {
self.0
}
pub fn answer(&self) -> &str {
self.1
}
}