use std::path::Path;
use automl::SupervisedModel;
use super::metaml::{MetaMLDataset, MetaMLModel};
#[derive(Default)]
pub struct LinearRegressor {
#[allow(dead_code)]
model: Option<SupervisedModel>,
}
impl LinearRegressor {
#[must_use]
pub const fn new() -> Self {
Self { model: None }
}
}
impl MetaMLModel for LinearRegressor {
fn train(&mut self, _data: MetaMLDataset) {
todo!()
}
fn predict(&self, _features: &[f32; 6]) -> f32 {
todo!()
}
fn load(_path: &Path) -> Result<Self, String> {
todo!()
}
fn save(&self, _path: &Path) -> Result<(), String> {
todo!()
}
}
#[derive(Default)]
pub struct DecisionTreeRegressor {
#[allow(dead_code)]
model: Option<SupervisedModel>,
}
impl DecisionTreeRegressor {
#[allow(dead_code)]
const MAX_DEPTH: u16 = 3;
#[must_use]
pub const fn new() -> Self {
Self { model: None }
}
}
impl MetaMLModel for DecisionTreeRegressor {
fn train(&mut self, _data: MetaMLDataset) {
todo!()
}
fn predict(&self, _features: &[f32; 6]) -> f32 {
todo!()
}
fn load(_path: &Path) -> Result<Self, String> {
todo!()
}
fn save(&self, _path: &Path) -> Result<(), String> {
todo!()
}
}