Before formatting:
vm.get_method_or_type_error(
obj.clone(),
"__getitem__",
|| format!("'{}' object is not iterable", obj.class().name)
)?;
After formatting:
vm.get_method_or_type_error(obj.clone(), "__getitem__", || {
format!("'{}' object is not iterable", obj.class().name)
})?;
Maybe lazy string (empty closure params and format! call inside) and other single expression closures should not be split by a new line, and instead being considered as an atomic element?
If I add more arguments, so that a list would be formatted as arg-per-line anyway, it behaves exactly like that and is more readable in my opinion
vm.get_method_or_type_error(
obj.clone(),
obj.clone(),
obj.clone(),
"__getitem__",
|| format!("hello, world1111111111111112222222222, 2222222221111111111111222"),
)?;
Before formatting:
After formatting:
Maybe lazy string (empty closure params and
format!call inside) and other single expression closures should not be split by a new line, and instead being considered as an atomic element?If I add more arguments, so that a list would be formatted as arg-per-line anyway, it behaves exactly like that and is more readable in my opinion