1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
use types::*;

use std::fmt;

pub trait Properties: Eq + PartialEq + Clone + fmt::Debug {
    /// Get the symbol of the current item
    fn symbol(&self) -> String;


    /// Get the name of the current item
    fn name(&self) -> String;


    /// Get the mass of the current item
    fn mass(&self) -> AtomMass;


    /// Stringify the current item (default: self.symbol())
    fn stringify(&self) -> String {
        self.symbol()
    }
}