reda_lib/model/
pin.rs

1use reda_lib_macro::model;
2
3#[model]
4#[derive(Debug, PartialEq, Clone, Default)]
5pub struct LibPin {
6    pub name: String,
7    pub direction: LibPinDirection,
8    pub function: Option<String>,
9}
10
11#[derive(Debug, PartialEq, Clone, Default)]
12pub enum LibPinDirection {
13    #[default]
14    Input,
15    Output,
16    Inout,
17    Internal,
18}
19
20impl LibPin {
21    pub fn new<S: Into<String>>(name: S) -> Self {
22        Self { 
23            name: name.into(),
24            ..Default::default()
25        }
26    }
27}