...
This commit is contained in:
@@ -56,7 +56,7 @@ pub fn opt(name: &str) -> crate::config::ConfigOptId {
|
||||
let mut opts = mize.config_opts.lock().unwrap();
|
||||
let id = cur_part.join(name).unwrap();
|
||||
let opt = ConfigOpt {
|
||||
name: name.to_owned(),
|
||||
name: id.dot(),
|
||||
val: None,
|
||||
fun: None,
|
||||
deps: Vec::new(),
|
||||
@@ -65,13 +65,49 @@ pub fn opt(name: &str) -> crate::config::ConfigOptId {
|
||||
ConfigOptId { id }
|
||||
}
|
||||
|
||||
pub fn method<F: Fn(ItemData) -> MizeResult<ItemData>>(_name: &str, _fun: F) {
|
||||
pub fn method<F: Fn(ItemData) -> MizeResult<ItemData>>(name: &str, fun: F) -> ConfigOptId {
|
||||
let mize = get_global_mize().unwrap();
|
||||
let mut cur_part = mize.cur_eval_part.lock().unwrap().clone().unwrap();
|
||||
let mut opts = mize.config_opts.lock().unwrap();
|
||||
let id = cur_part.join(name).unwrap();
|
||||
let opt = ConfigOpt {
|
||||
name: id.dot(),
|
||||
val: Some(ItemData::from_native(fun)?),
|
||||
fun: None,
|
||||
deps: Vec::new(),
|
||||
};
|
||||
opts.insert(id.clone(), opt);
|
||||
ConfigOptId { id }
|
||||
}
|
||||
|
||||
pub fn effect<F: Fn(ItemData) -> MizeResult<ItemData>>(_name: &str, _fun: F) {
|
||||
pub fn effect<F: Fn(ItemData) -> MizeResult<ItemData>>(_name: &str, _fun: F) -> ConfigOptId {
|
||||
let mize = get_global_mize().unwrap();
|
||||
let mut cur_part = mize.cur_eval_part.lock().unwrap().clone().unwrap();
|
||||
let mut opts = mize.config_opts.lock().unwrap();
|
||||
let id = cur_part.join(name).unwrap();
|
||||
let opt = ConfigOpt {
|
||||
name: id.dot(),
|
||||
val: Some(ItemData::from_native(fun)?),
|
||||
fun: None,
|
||||
deps: Vec::new(),
|
||||
};
|
||||
opts.insert(id.clone(), opt);
|
||||
ConfigOptId { id }
|
||||
}
|
||||
|
||||
pub fn thread<F: Fn(ItemData) -> MizeResult<ItemData>>(_name: &str, _fun: F) {
|
||||
pub fn thread<F: Fn(ItemData) -> MizeResult<ItemData>>(_name: &str, _fun: F) -> ConfigOptId {
|
||||
let mize = get_global_mize().unwrap();
|
||||
let mut cur_part = mize.cur_eval_part.lock().unwrap().clone().unwrap();
|
||||
let mut opts = mize.config_opts.lock().unwrap();
|
||||
let id = cur_part.join(name).unwrap();
|
||||
let opt = ConfigOpt {
|
||||
name: id.dot(),
|
||||
val: Some(ItemData::from_native(fun)?),
|
||||
fun: None,
|
||||
deps: Vec::new(),
|
||||
};
|
||||
opts.insert(id.clone(), opt);
|
||||
ConfigOptId { id }
|
||||
}
|
||||
|
||||
type CFun = unsafe extern "C" fn (*mut ItemData) -> *mut ItemData;
|
||||
|
||||
Reference in New Issue
Block a user