const_error in std::io - Rust (original) (raw)
pub macro const_error($kind:expr, <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>m</mi><mi>e</mi><mi>s</mi><mi>s</mi><mi>a</mi><mi>g</mi><mi>e</mi><mo>:</mo><mi>e</mi><mi>x</mi><mi>p</mi><mi>r</mi></mrow><annotation encoding="application/x-tex">message:expr </annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">m</span><span class="mord mathnormal">ess</span><span class="mord mathnormal">a</span><span class="mord mathnormal" style="margin-right:0.03588em;">g</span><span class="mord mathnormal">e</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">:</span><span class="mspace" style="margin-right:0.2778em;"></span></span><span class="base"><span class="strut" style="height:0.625em;vertical-align:-0.1944em;"></span><span class="mord mathnormal">e</span><span class="mord mathnormal">x</span><span class="mord mathnormal">p</span><span class="mord mathnormal" style="margin-right:0.02778em;">r</span></span></span></span>(,)?) {
...
}
🔬This is a nightly-only experimental API. (io_const_error
#133448)
Expand description
Creates a new I/O error from a known kind of error and a string literal.
Contrary to Error::new, this macro does not allocate and can be used inconst
contexts.
§Example
#![feature(io_const_error)]
use std::io::{const_error, Error, ErrorKind};
const FAIL: Error = const_error!(ErrorKind::Unsupported, "tried something that never works");
fn not_here() -> Result<(), Error> {
Err(FAIL)
}