use rustc::ty::{self, Ty, TyCtxt};
use rustc::ty::fold::{TypeFoldable, TypeVisitor};
use rustc::util::nodemap::FxHashSet;
-use rustc::mir::interpret::ConstValue;
use syntax::source_map::Span;
#[derive(Clone, PartialEq, Eq, Hash, Debug)]
}
fn visit_const(&mut self, c: &'tcx ty::Const<'tcx>) -> bool {
- if let ConstValue::Param(data) = c.val {
+ if let ty::ConstKind::Param(data) = c.val {
self.parameters.push(Parameter::from(data));
}
false
pub fn identify_constrained_generic_params<'tcx>(
tcx: TyCtxt<'tcx>,
- predicates: &ty::GenericPredicates<'tcx>,
+ predicates: ty::GenericPredicates<'tcx>,
impl_trait_ref: Option<ty::TraitRef<'tcx>>,
input_parameters: &mut FxHashSet<Parameter>,
) {
- let mut predicates = predicates.predicates.clone();
+ let mut predicates = predicates.predicates.to_vec();
setup_constraining_predicates(tcx, &mut predicates, impl_trait_ref, input_parameters);
}