fx_durable_ga/services/optimization/
errors.rs1use crate::services::lock;
2use crate::{
3 models::SelectionError,
4 repositories::{genotypes, morphologies, requests},
5};
6
7#[derive(Debug, thiserror::Error)]
9pub enum Error {
10 #[error("RequestsRepositoryError: {0}")]
11 RequestsRepositoryError(#[from] requests::Error),
12 #[error("MorphologiesRepositoryError: {0}")]
13 MorphologiesRepositoryError(#[from] morphologies::Error),
14 #[error("GenotypesRepositoryError: {0}")]
15 GenotypesRepositoryError(#[from] genotypes::Error),
16 #[error("UnknownType: type_name={type_name}, type_hash={type_hash}")]
17 UnknownTypeError { type_hash: i32, type_name: String },
18 #[error("EvaluationError: {0}")]
19 EvaluationError(#[from] anyhow::Error),
20 #[error("Selection error: {0}")]
21 SelectionError(#[from] SelectionError),
22 #[error("Lock error: {0}")]
23 LockError(#[from] lock::Error),
24 #[error("Unknownn phenotype")]
25 UnknownPhenotype { type_name: String, type_hash: i32 },
26}