pub struct PreparedEnv<'db> {
pub env: Env<'db>,
pub input_symbols: Vec<SymVariable<'db>>,
pub input_tys: Vec<SymTy<'db>>,
pub output_ty_body: SymTy<'db>,
pub output_ty_caller: SymTy<'db>,
pub where_clauses: Vec<SymWhereClause<'db>>,
}Fields§
§env: Env<'db>The env that should be used to type check the body
input_symbols: Vec<SymVariable<'db>>The generic variables declared on the fn
input_tys: Vec<SymTy<'db>>The types of the fn inputs
output_ty_body: SymTy<'db>The return type the block should generate. This is the type that the user wrote. In the case of an async fn, this is not a future.
output_ty_caller: SymTy<'db>The return type of the fn from the perspective of the caller. For an async fn, this is a future.
where_clauses: Vec<SymWhereClause<'db>>Where clauses in scope
Trait Implementations§
Auto Trait Implementations§
impl<'db> Freeze for PreparedEnv<'db>
impl<'db> !RefUnwindSafe for PreparedEnv<'db>
impl<'db> !Send for PreparedEnv<'db>
impl<'db> !Sync for PreparedEnv<'db>
impl<'db> Unpin for PreparedEnv<'db>
impl<'db> UnsafeUnpin for PreparedEnv<'db>
impl<'db> !UnwindSafe for PreparedEnv<'db>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more