rustc_middle::mir::interpret

Type Alias EvalToValTreeResult

source
pub type EvalToValTreeResult<'tcx> = Result<Result<ValTree<'tcx>, Ty<'tcx>>, ErrorHandled>;
Expand description

Ok(Err(ty)) indicates the constant was fine, but the valtree couldn’t be constructed because the value contains something of type ty that is not valtree-compatible. The caller can then show an appropriate error; the query does not have the necessary context to give good user-facing errors for this case.

Aliased Type§

enum EvalToValTreeResult<'tcx> {
    Ok(Result<ValTree<'tcx>, Ty<'tcx>>),
    Err(ErrorHandled),
}

Variants§

§

Ok(Result<ValTree<'tcx>, Ty<'tcx>>)

Contains the success value

§

Err(ErrorHandled)

Contains the error value

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 24 bytes

Size for each variant:

  • Ok: 24 bytes
  • Err: 16 bytes