#![warn(missing_docs)]
#![warn(clippy::all)]
#![warn(clippy::pedantic)]
#![allow(clippy::module_name_repetitions)]
pub mod domain;
pub mod application;
pub mod infrastructure;
pub mod loss;
pub mod ewc;
pub use domain::entities::{
LearningSession, GnnModelType, TrainingStatus, TrainingMetrics,
TransitionGraph, RefinedEmbedding, EmbeddingId, Timestamp,
GraphNode, GraphEdge, HyperParameters, LearningConfig,
};
pub use domain::repository::LearningRepository;
pub use application::services::LearningService;
pub use infrastructure::gnn_model::{GnnModel, GnnLayer, Aggregator};
pub use infrastructure::attention::{AttentionLayer, MultiHeadAttention};
pub use loss::{info_nce_loss, triplet_loss, margin_ranking_loss, contrastive_loss};
pub use ewc::{EwcState, FisherInformation, EwcRegularizer};
pub const VERSION: &str = env!("CARGO_PKG_VERSION");
pub mod prelude {
pub use crate::domain::entities::*;
pub use crate::domain::repository::*;
pub use crate::application::services::*;
pub use crate::infrastructure::gnn_model::*;
pub use crate::infrastructure::attention::*;
pub use crate::loss::*;
pub use crate::ewc::*;
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_crate_exports() {
let _: GnnModelType = GnnModelType::Gcn;
let _: TrainingStatus = TrainingStatus::Pending;
}
}