pub struct HirEqInterExpr<'a, 'b, 'tcx> {
inner: &'a mut SpanlessEq<'b, 'tcx>,
left_ctxt: SyntaxContext,
right_ctxt: SyntaxContext,
pub locals: HirIdMap<HirId>,
}
Fields§
§inner: &'a mut SpanlessEq<'b, 'tcx>
§left_ctxt: SyntaxContext
§right_ctxt: SyntaxContext
§locals: HirIdMap<HirId>
Implementations§
Source§impl HirEqInterExpr<'_, '_, '_>
impl HirEqInterExpr<'_, '_, '_>
pub fn eq_stmt(&mut self, left: &Stmt<'_>, right: &Stmt<'_>) -> bool
Sourcefn eq_block(&mut self, left: &Block<'_>, right: &Block<'_>) -> bool
fn eq_block(&mut self, left: &Block<'_>, right: &Block<'_>) -> bool
Checks whether two blocks are the same.
fn should_ignore(&mut self, expr: &Expr<'_>) -> bool
pub fn eq_body(&mut self, left: BodyId, right: BodyId) -> bool
pub fn eq_expr(&mut self, left: &Expr<'_>, right: &Expr<'_>) -> bool
fn eq_exprs(&mut self, left: &[Expr<'_>], right: &[Expr<'_>]) -> bool
fn eq_expr_field(&mut self, left: &ExprField<'_>, right: &ExprField<'_>) -> bool
fn eq_generic_arg( &mut self, left: &GenericArg<'_>, right: &GenericArg<'_>, ) -> bool
fn eq_const_arg(&mut self, left: &ConstArg<'_>, right: &ConstArg<'_>) -> bool
fn eq_lifetime(left: &Lifetime, right: &Lifetime) -> bool
fn eq_pat_field(&mut self, left: &PatField<'_>, right: &PatField<'_>) -> bool
Sourcefn eq_pat(&mut self, left: &Pat<'_>, right: &Pat<'_>) -> bool
fn eq_pat(&mut self, left: &Pat<'_>, right: &Pat<'_>) -> bool
Checks whether two patterns are the same.
fn eq_qpath(&mut self, left: &QPath<'_>, right: &QPath<'_>) -> bool
pub fn eq_path(&mut self, left: &Path<'_>, right: &Path<'_>) -> bool
fn eq_path_parameters( &mut self, left: &GenericArgs<'_>, right: &GenericArgs<'_>, ) -> bool
pub fn eq_path_segments<'tcx>( &mut self, left: &'tcx [PathSegment<'tcx>], right: &'tcx [PathSegment<'tcx>], ) -> bool
pub fn eq_path_segment( &mut self, left: &PathSegment<'_>, right: &PathSegment<'_>, ) -> bool
pub fn eq_ty(&mut self, left: &Ty<'_>, right: &Ty<'_>) -> bool
Sourcefn eq_assoc_eq_constraint(
&mut self,
left: &AssocItemConstraint<'_>,
right: &AssocItemConstraint<'_>,
) -> bool
fn eq_assoc_eq_constraint( &mut self, left: &AssocItemConstraint<'_>, right: &AssocItemConstraint<'_>, ) -> bool
Checks whether two constraints designate the same equality constraint (same name, and same type or const).
fn check_ctxt(&mut self, left: SyntaxContext, right: SyntaxContext) -> bool
Auto Trait Implementations§
impl<'a, 'b, 'tcx> Freeze for HirEqInterExpr<'a, 'b, 'tcx>
impl<'a, 'b, 'tcx> !RefUnwindSafe for HirEqInterExpr<'a, 'b, 'tcx>
impl<'a, 'b, 'tcx> !Send for HirEqInterExpr<'a, 'b, 'tcx>
impl<'a, 'b, 'tcx> !Sync for HirEqInterExpr<'a, 'b, 'tcx>
impl<'a, 'b, 'tcx> Unpin for HirEqInterExpr<'a, 'b, 'tcx>
impl<'a, 'b, 'tcx> !UnwindSafe for HirEqInterExpr<'a, 'b, 'tcx>
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
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 moreLayout§
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: 72 bytes