Trait liquid_core::error::ResultLiquidReplaceExt
source · pub trait ResultLiquidReplaceExt<T> {
// Required methods
fn lossy_chain<S: Into<KString>>(self, msg: S) -> Result<T>;
fn lossy_chain_with<F>(self, msg: F) -> Result<T>
where F: FnOnce() -> KString;
fn replace<S: Into<KString>>(self, msg: S) -> Result<T>;
fn replace_with<F>(self, msg: F) -> Result<T>
where F: FnOnce() -> KString;
}
Expand description
Result
extension methods for adapting third party errors to Error
.
Required Methods§
sourcefn lossy_chain<S: Into<KString>>(self, msg: S) -> Result<T>
fn lossy_chain<S: Into<KString>>(self, msg: S) -> Result<T>
Create an Error
ignoring E
as the cause.
Example
use std::io;
use liquid_core::error::Result;
use liquid_core::error::ResultLiquidReplaceExt;
let error = Err(io::Error::new(io::ErrorKind::NotFound, "Oops"));
let error: Result<i32> = error.lossy_chain("Missing liquid partial");
sourcefn lossy_chain_with<F>(self, msg: F) -> Result<T>where
F: FnOnce() -> KString,
fn lossy_chain_with<F>(self, msg: F) -> Result<T>where F: FnOnce() -> KString,
Create an Error
ignoring E
as the cause.
Example
use std::io;
use liquid_core::error::Result;
use liquid_core::error::ResultLiquidReplaceExt;
let filename = "foo";
let error = Err(io::Error::new(io::ErrorKind::NotFound, "Oops"));
let error: Result<i32> = error
.lossy_chain_with(|| format!("Missing liquid partial: {}", filename).into());
sourcefn replace<S: Into<KString>>(self, msg: S) -> Result<T>
fn replace<S: Into<KString>>(self, msg: S) -> Result<T>
Create an Error
ignoring E
as the cause.
Example
use std::io;
use liquid_core::error::Result;
use liquid_core::error::ResultLiquidReplaceExt;
let error = Err(io::Error::new(io::ErrorKind::NotFound, "Oops"));
let error: Result<i32> = error.replace("Missing liquid partial");
sourcefn replace_with<F>(self, msg: F) -> Result<T>where
F: FnOnce() -> KString,
fn replace_with<F>(self, msg: F) -> Result<T>where F: FnOnce() -> KString,
Create an Error
ignoring E
as the cause.
Example
use std::io;
use liquid_core::error::Result;
use liquid_core::error::ResultLiquidReplaceExt;
let filename = "foo";
let error = Err(io::Error::new(io::ErrorKind::NotFound, "Oops"));
let error: Result<i32> = error
.replace_with(|| format!("Missing liquid partial: {}", filename).into());