Skip to main content

WithCode

Trait WithCode 

Source
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");

Required Methods§

Source

fn code(&self) -> &str

Gets the code of the current object

§Returns

The code of the current object

Source

fn set_code(&mut self, code: &str)

Sets the code of the current object

§Parameters
  • code - The new code to be set

Implementors§