dinghy-lib 0.4.11

Cross-compilation made easier - see main crate cargo-dinghy
Documentation
use std::{ sync };
use { Configuration, Device, Platform, PlatformManager, Result };

mod device;

use self::device::ScriptDevice;

pub struct ScriptDeviceManager {
    conf: sync::Arc<Configuration>
}

impl ScriptDeviceManager {
    pub fn probe(conf: sync::Arc<Configuration>) -> Option<ScriptDeviceManager> {
        Some(ScriptDeviceManager { conf })
    }
}

impl PlatformManager for ScriptDeviceManager {
    fn devices(&self) -> Result<Vec<Box<Device>>> {
        Ok(self.conf.script_devices
            .iter()
            .map(|(k, conf)| {
                Box::new(ScriptDevice {
                    id: k.clone(),
                    conf: conf.clone(),
                }) as _
            })
            .collect())
    }
    fn platforms(&self) -> Result<Vec<Box<Platform>>> {
        Ok(vec!())
    }
}