summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
index d27c8de..7e3842d 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -123,6 +123,16 @@ impl Scurvy {
 		}
 	}
 
+	/// Shorthand for [Scurvy::parse] followed by `unwrap_or()`
+	pub fn parse_or<T: FromStr, F: Into<Formula<T>>>(
+		&self,
+		key: &str,
+		formula: F,
+		default: T,
+	) -> T {
+		self.parse(key, formula).unwrap_or(default)
+	}
+
 	pub fn parse_req<T: FromStr, F: Into<Formula<T>>>(&self, key: &str, formula: F) -> T {
 		let formula = formula.into();
 		let missing = formula.missing.clone();