mirror of
https://github.com/slint-ui/slint.git
synced 2025-07-16 01:25:27 +00:00
Remove dependency on gil-refs feature
(which will be removed in future versions)
This commit is contained in:
parent
9253af05b1
commit
ad74c31ed4
2 changed files with 12 additions and 14 deletions
|
@ -98,19 +98,18 @@ impl<'py> FromPyObject<'py> for PyValue {
|
|||
})
|
||||
})
|
||||
.or_else(|_| {
|
||||
ob.extract::<&PyDict>().and_then(|dict| {
|
||||
let dict_items: Result<Vec<(String, slint_interpreter::Value)>, PyErr> = dict
|
||||
.iter()
|
||||
.map(|(name, pyval)| {
|
||||
let name = name.extract::<&str>()?.to_string();
|
||||
let slintval = PyValue::extract(pyval)?;
|
||||
Ok((name, slintval.0))
|
||||
})
|
||||
.collect::<Result<Vec<(_, _)>, PyErr>>();
|
||||
Ok(slint_interpreter::Value::Struct(slint_interpreter::Struct::from_iter(
|
||||
dict_items?.into_iter(),
|
||||
)))
|
||||
})
|
||||
let dict = ob.downcast::<PyDict>()?;
|
||||
let dict_items: Result<Vec<(String, slint_interpreter::Value)>, PyErr> = dict
|
||||
.iter()
|
||||
.map(|(name, pyval)| {
|
||||
let name = name.extract::<&str>()?.to_string();
|
||||
let slintval = PyValue::extract_bound(&pyval)?;
|
||||
Ok((name, slintval.0))
|
||||
})
|
||||
.collect::<Result<Vec<(_, _)>, PyErr>>();
|
||||
Ok::<_, PyErr>(slint_interpreter::Value::Struct(
|
||||
slint_interpreter::Struct::from_iter(dict_items?.into_iter()),
|
||||
))
|
||||
})?;
|
||||
|
||||
Ok(PyValue(interpreter_val))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue