use serde::Serialize;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum FileRole {
Production,
Test,
Generated,
Config,
Documentation,
Fixture,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum ModuleKind {
Feature,
Shared,
Infrastructure,
Domain,
Ui,
Cli,
Unknown,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
pub enum LanguageFamily {
CurlyBrace, Python,
Go,
Shell,
Markup, Unknown,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
pub struct ArchitectureContext {
pub file_role: FileRole,
pub module_kind: ModuleKind,
pub language_family: LanguageFamily,
pub is_entrypoint: bool,
pub is_public_api: bool,
}