pub trait WithCode {
// Required methods
fn code(&self) -> &str;
fn set_code(&mut self, code: &str);
}Expand description
A trait indicating that an entity class has a code property
This trait provides access and setting functionality for the code of domain objects, where the code is usually a globally unique identifier.
§Example
use qubit_mixin::WithCode;
struct Product {
code: String,
name: String,
}
impl WithCode for Product {
fn code(&self) -> &str {
&self.code
}
fn set_code(&mut self, code: &str) {
self.code = code.to_string();
}
}
let mut product = Product {
code: "PROD001".to_string(),
name: "Widget".to_string(),
};
assert_eq!(product.code(), "PROD001");
product.set_code("PROD002");
assert_eq!(product.code(), "PROD002");