cal_core/device/
script.rs1use crate::device::device::Connector;
2use crate::{ConnectState, FlowState};
3use serde::{Deserialize, Serialize};
4use std::fmt::{Debug, Formatter};
5
6#[derive(Serialize, Deserialize, Clone)]
7#[serde(rename_all = "camelCase")]
8pub struct Script {
9 pub code: String,
10 #[serde(default = "crate::device::shared::build_connect_to")]
11 pub connect_to: String,
12}
13
14impl Connector for Script {
15 fn get_connect_to(&mut self, _state: &mut FlowState) -> ConnectState {
16 ConnectState::default(&self.connect_to, None)
17 }
18}
19
20impl Debug for Script {
21 fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
22 f.debug_struct("Script")
23 .field("code", &self.code)
24 .field("connect_to", &self.connect_to)
25 .finish()
26 }
27}