use crate::v1_0::bmm::core::entity::bmm_class::BmmClass;
use crate::v1_0::bmm_persistence::p_bmm_enumeration::PBmmEnumeration;
use crate::v1_0::bmm_persistence::p_bmm_generic_parameter::PBmmGenericParameter;
use crate::v1_0::bmm_persistence::p_bmm_generic_type::PBmmGenericType;
use crate::v1_0::bmm_persistence::p_bmm_property::PBmmProperty;
#[doc(alias = "P_BMM_CLASS")]
#[derive(Debug, Clone, PartialEq)]
pub struct PBmmClassData {
pub documentation: Option<String>,
pub name: String,
pub ancestors: Option<Vec<String>>,
pub properties: Option<std::collections::BTreeMap<String, PBmmProperty>>,
pub is_abstract: Option<bool>,
pub is_override: Option<bool>,
pub generic_parameter_defs: Option<std::collections::BTreeMap<String, PBmmGenericParameter>>,
pub source_schema_id: String,
pub bmm_class: Option<BmmClass>,
pub uid: i32,
pub ancestor_defs: Option<Vec<PBmmGenericType>>,
}
#[doc(alias = "P_BMM_CLASS")]
#[derive(Debug, Clone, PartialEq)]
pub enum PBmmClass {
PBmmEnumeration(PBmmEnumeration),
PBmmClass(PBmmClassData),
}