use rustc_hir::{BindingAnnotation, ByRef, Mutability}; | |
#[derive(Clone, PartialEq, TyEncodable, TyDecodable, Debug, Copy, HashStable)] | |
pub enum BindingMode { | |
BindByReference(Mutability), | |
BindByValue(Mutability), | |
} | |
TrivialTypeTraversalAndLiftImpls! { BindingMode } | |
impl BindingMode { | |
pub fn convert(BindingAnnotation(by_ref, mutbl): BindingAnnotation) -> BindingMode { | |
match by_ref { | |
ByRef::No => BindingMode::BindByValue(mutbl), | |
ByRef::Yes => BindingMode::BindByReference(mutbl), | |
} | |
} | |
} |