pub mod builder;
pub mod hoeffding;
pub mod hoeffding_classifier;
pub mod node;
pub mod predict;
pub mod split;
pub mod leaf_model;
pub trait StreamingTree: Send + Sync {
fn train_one(&mut self, features: &[f64], gradient: f64, hessian: f64);
fn predict(&self, features: &[f64]) -> f64;
fn n_leaves(&self) -> usize;
fn n_samples_seen(&self) -> u64;
fn reset(&mut self);
fn split_gains(&self) -> &[f64] {
&[]
}
fn predict_with_variance(&self, features: &[f64]) -> (f64, f64) {
(self.predict(features), f64::INFINITY)
}
}