trait Shape {
fn new(side_length: i32) -> Self;
fn get_area(&self) -> i32;
}
struct Square {
side_length: i32
}
impl Shape for Square {
fn new(side_length: i32) -> Self {
Square {
side_length: side_length
}
}
fn get_area(&self) -> i32 {
self.side_length * self.side_length
}
}
let square = Square::new(5);
let area = square.get_area();
//area is 25
print!("area is {area}");