clay_core/object/
object.rs

1use crate::{
2    prelude::*,
3    shape::*,
4    material::*,
5};
6
7
8/// An abstract object that could be drawn completely.
9pub trait Object: Pack + Instance<ObjectClass> {}
10
11/// Device interface for object.
12pub enum ObjectClass {}
13impl Class for ObjectClass {
14    fn name() -> String {
15        "object".to_string()
16    }
17    fn methods() -> Vec<String> {
18        let mut methods = ShapeClass::methods();
19        methods.append(&mut MaterialClass::methods());
20        methods
21    }
22}