aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client.rs4
-rw-r--r--src/common/mod.rs12
2 files changed, 9 insertions, 7 deletions
diff --git a/src/client.rs b/src/client.rs
index f7957cd..d736b99 100644
--- a/src/client.rs
+++ b/src/client.rs
@@ -70,7 +70,9 @@ impl Client {
let raw = request.call(transport)?;
match raw {
xmlrpc::Value::Struct(map) => {
- let code = map.get("code").ok_or(Error::Inexistent("code".into()))?;
+ let code = map
+ .get("code")
+ .ok_or_else(|| Error::Inexistent("code".into()))?;
match code {
xmlrpc::Value::Int(code) => {
diff --git a/src/common/mod.rs b/src/common/mod.rs
index c9ca264..ef15d9c 100644
--- a/src/common/mod.rs
+++ b/src/common/mod.rs
@@ -7,7 +7,7 @@ use iso8601::DateTime;
pub(crate) fn get_str(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Result<String> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_str()
.ok_or_else(|| Error::Type(key.clone(), "String".into(), map.get(&key).unwrap().clone()))?;
@@ -17,7 +17,7 @@ pub(crate) fn get_str(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Res
pub(crate) fn get_i32(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Result<i32> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_i32()
.ok_or_else(|| Error::Type(key.clone(), "Int".into(), map.get(&key).unwrap().clone()))?;
@@ -27,7 +27,7 @@ pub(crate) fn get_i32(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Res
pub(crate) fn get_bool(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Result<bool> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_bool()
.ok_or_else(|| Error::Type(key.clone(), "Bool".into(), map.get(&key).unwrap().clone()))?;
@@ -37,7 +37,7 @@ pub(crate) fn get_bool(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Re
pub(crate) fn get_datetime(map: &BTreeMap<String, xmlrpc::Value>, key: String) -> Result<DateTime> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_datetime()
.ok_or_else(|| {
Error::Type(
@@ -56,7 +56,7 @@ pub(crate) fn get_array(
) -> Result<Vec<xmlrpc::Value>> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_array()
.ok_or_else(|| Error::Type(key.clone(), "Array".into(), map.get(&key).unwrap().clone()))?;
@@ -69,7 +69,7 @@ pub(crate) fn get_map(
) -> Result<BTreeMap<String, xmlrpc::Value>> {
let value = map
.get(&key)
- .ok_or(Error::Inexistent(key.clone()))?
+ .ok_or_else(|| Error::Inexistent(key.clone()))?
.as_struct()
.ok_or_else(|| Error::Type(key.clone(), "Struct".into(), map.get(&key).unwrap().clone()))?;