1use std::sync::Arc;
2
3use sim_kernel::{Cx, Result};
4
5use crate::{FixtureTransport, SkillCard, SkillLib};
6
7pub fn install_skill_lib(cx: &mut Cx) -> Result<()> {
9 sim_lib_core::install_once(cx, &SkillLib)?;
10 crate::browse::publish_skill_browse_metadata(cx)
11}
12
13pub fn install_fixture_skill(
18 cx: &mut Cx,
19 transport: Arc<FixtureTransport>,
20 card: SkillCard,
21) -> Result<()> {
22 install_skill_lib(cx)?;
23 let registry = crate::skill_registry(cx)?;
24 registry.install_transport(transport)?;
25 registry.bind_card(cx, card)?;
26 Ok(())
27}