use super::TableEntry;
use crate::types::Handle;
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct AppId {
pub handle: Handle,
pub name: String,
}
impl AppId {
pub fn new(name: impl Into<String>) -> Self {
AppId {
handle: Handle::NULL,
name: name.into(),
}
}
pub fn acad() -> Self {
Self::new("ACAD")
}
}
impl TableEntry for AppId {
fn handle(&self) -> Handle {
self.handle
}
fn set_handle(&mut self, handle: Handle) {
self.handle = handle;
}
fn name(&self) -> &str {
&self.name
}
fn set_name(&mut self, name: String) {
self.name = name;
}
fn is_standard(&self) -> bool {
self.name == "ACAD"
}
}