Rename HIR UnOp variants
This renames the variants in HIR UnOp from enum UnOp { UnDeref, UnNot, UnNeg, } to enum UnOp { Deref, Not, Neg, } Motivations: - This is more consistent with the rest of the code base where most enum variants don't have a prefix. - These variants are never used without the `UnOp` prefix so the extra `Un` prefix doesn't help with readability. E.g. we don't have any `UnDeref`s in the code, we only have `UnOp::UnDeref`. - MIR `UnOp` type variants don't have a prefix so this is more consistent with MIR types. - "un" prefix reads like "inverse" or "reverse", so as a beginner in rustc code base when I see "UnDeref" what comes to my mind is something like "&*" instead of just "*".
This commit is contained in:
parent
36931ce3d9
commit
c4e3558b8c
41 changed files with 80 additions and 80 deletions
|
@ -1112,25 +1112,25 @@ pub type BinOp = Spanned<BinOpKind>;
|
|||
#[derive(Copy, Clone, PartialEq, Encodable, Debug, HashStable_Generic)]
|
||||
pub enum UnOp {
|
||||
/// The `*` operator (deferencing).
|
||||
UnDeref,
|
||||
Deref,
|
||||
/// The `!` operator (logical negation).
|
||||
UnNot,
|
||||
Not,
|
||||
/// The `-` operator (negation).
|
||||
UnNeg,
|
||||
Neg,
|
||||
}
|
||||
|
||||
impl UnOp {
|
||||
pub fn as_str(self) -> &'static str {
|
||||
match self {
|
||||
Self::UnDeref => "*",
|
||||
Self::UnNot => "!",
|
||||
Self::UnNeg => "-",
|
||||
Self::Deref => "*",
|
||||
Self::Not => "!",
|
||||
Self::Neg => "-",
|
||||
}
|
||||
}
|
||||
|
||||
/// Returns `true` if the unary operator takes its argument by value.
|
||||
pub fn is_by_value(self) -> bool {
|
||||
matches!(self, Self::UnNeg | Self::UnNot)
|
||||
matches!(self, Self::Neg | Self::Not)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1477,7 +1477,7 @@ impl Expr<'_> {
|
|||
// https://github.com/rust-lang/rfcs/blob/master/text/0803-type-ascription.md#type-ascription-and-temporaries
|
||||
ExprKind::Type(ref e, _) => e.is_place_expr(allow_projections_from),
|
||||
|
||||
ExprKind::Unary(UnOp::UnDeref, _) => true,
|
||||
ExprKind::Unary(UnOp::Deref, _) => true,
|
||||
|
||||
ExprKind::Field(ref base, _) | ExprKind::Index(ref base, _) => {
|
||||
allow_projections_from(base) || base.is_place_expr(allow_projections_from)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue