use thiserror::Error;
use crate::{
models::{code::InvalidIdentPath, schema::NamespaceId, TypeIdent},
pipeline::generator::ValueGeneratorMode,
};
#[derive(Debug, Error)]
pub enum Error {
#[error("Unknown type identifier: {0}!")]
UnknownType(TypeIdent),
#[error("Unknown namespace: {0:?}!")]
UnknownNamespace(NamespaceId),
#[error("Invalid default value for type (ident={ident:?}, value={value}, mode: {mode:?})!")]
InvalidDefaultValue {
ident: TypeIdent,
value: String,
mode: ValueGeneratorMode,
},
#[error("{0}")]
InvalidIdentifier(
#[from]
#[source]
InvalidIdentPath,
),
}