pub trait LearnedComponent:
Send
+ Sync
+ Serialize
+ DeserializeOwned
+ Clone {
// Required methods
fn component_id() -> &'static str
where Self: Sized;
fn confidence(&self) -> f64;
fn session_count(&self) -> usize;
fn updated_at(&self) -> u64;
// Provided methods
fn merge(&mut self, other: &Self)
where Self: Sized { ... }
fn version() -> u32
where Self: Sized { ... }
}Expand description
学習結果コンポーネントの共通 trait
各学習対象(DepGraph, Strategy, Exploration 等)の学習結果が実装する。 Typed で管理することで、型安全性と IDE サポートを確保。
Required Methods§
Sourcefn component_id() -> &'static strwhere
Self: Sized,
fn component_id() -> &'static strwhere
Self: Sized,
コンポーネント識別子(ファイル名等に使用)
Sourcefn confidence(&self) -> f64
fn confidence(&self) -> f64
信頼度スコア (0.0 - 1.0)
学習データ量や品質に基づく信頼度。 低い場合は Bootstrap 追加実行を検討。
Sourcefn session_count(&self) -> usize
fn session_count(&self) -> usize
学習に使用したセッション数
Sourcefn updated_at(&self) -> u64
fn updated_at(&self) -> u64
最終更新タイムスタンプ (Unix epoch seconds)
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.