graphy_shared_funcs 0.3.0

Shared funcs for graphy.
use graphy_dll_error::Result as FuncResult;
use graphy_dll_error::WrapErr;
use graphy_static::ENVIRONMENT;

#[no_mangle]
pub extern fn get_module_list() -> FuncResult<String> {
    let environment = try!(ENVIRONMENT.get().wrap_err_to_err());
    let module_map = environment.get_module_map();

    let mut result = String::new();
    for (module_name, module_index) in module_map.get_data() {
        result.push_str(&format!("({}, {}), ", module_name, module_index));
    }

    result.pop();
    result.pop();

    Ok(result)
}