]> git.lizzy.rs Git - rust.git/commitdiff
move `RegionResolutionError` into `lexical_region_resolve`
authorNiko Matsakis <niko@alum.mit.edu>
Sun, 5 Nov 2017 10:28:22 +0000 (05:28 -0500)
committerNiko Matsakis <niko@alum.mit.edu>
Thu, 16 Nov 2017 10:57:42 +0000 (05:57 -0500)
src/librustc/infer/error_reporting/different_lifetimes.rs
src/librustc/infer/error_reporting/mod.rs
src/librustc/infer/error_reporting/named_anon_conflict.rs
src/librustc/infer/lexical_region_resolve/mod.rs
src/librustc/infer/region_inference/mod.rs

index 36370e23f216128f6f7e7c9c06eff16e95e464a4..c64bd610962eb440a4b4180cd2931c0fb227bcc4 100644 (file)
@@ -13,8 +13,8 @@
 use hir;
 use infer::InferCtxt;
 use ty::{self, Region};
-use infer::region_inference::RegionResolutionError::*;
-use infer::region_inference::RegionResolutionError;
+use infer::lexical_region_resolve::RegionResolutionError::*;
+use infer::lexical_region_resolve::RegionResolutionError;
 use hir::map as hir_map;
 use middle::resolve_lifetime as rl;
 use hir::intravisit::{self, Visitor, NestedVisitorMap};
index 072f76eb6aa8da973c6314f1c9f1b30a120306fc..9ce0e503280eac888b7d2108835dc2080e983373 100644 (file)
@@ -57,7 +57,8 @@
 
 use infer;
 use super::{InferCtxt, TypeTrace, SubregionOrigin, RegionVariableOrigin, ValuePairs};
-use super::region_inference::{RegionResolutionError, GenericKind};
+use super::region_inference::GenericKind;
+use super::lexical_region_resolve::RegionResolutionError;
 
 use std::fmt;
 use hir;
index e0b8a193ede0c15e27c2be1a7cadffef572e60c7..6af7415ba5371147a88fd79b01ad918aaa2766d9 100644 (file)
@@ -11,8 +11,8 @@
 //! Error Reporting for Anonymous Region Lifetime Errors
 //! where one region is named and the other is anonymous.
 use infer::InferCtxt;
-use infer::region_inference::RegionResolutionError::*;
-use infer::region_inference::RegionResolutionError;
+use infer::lexical_region_resolve::RegionResolutionError::*;
+use infer::lexical_region_resolve::RegionResolutionError;
 use ty;
 
 impl<'a, 'gcx, 'tcx> InferCtxt<'a, 'gcx, 'tcx> {
index 682f5743e4bff8e7768f6b0a1fd3b589ca53c8a3..217387befd89fa41f1241e0e394d00b6f604ea55 100644 (file)
 //! The code to do lexical region resolution.
 
 use infer::SubregionOrigin;
+use infer::RegionVariableOrigin;
 use infer::region_inference::Constraint;
+use infer::region_inference::GenericKind;
 use infer::region_inference::RegionVarBindings;
-use infer::region_inference::RegionResolutionError;
 use infer::region_inference::VarValue;
 use infer::region_inference::VerifyBound;
 use middle::free_region::RegionRelations;
 use std::u32;
 use ty::{self, TyCtxt};
 use ty::{Region, RegionVid};
-use ty::{ReEmpty, ReStatic, ReFree, ReEarlyBound, ReErased};
-use ty::{ReLateBound, ReScope, ReVar, ReSkolemized};
+use ty::{ReEarlyBound, ReEmpty, ReErased, ReFree, ReStatic};
+use ty::{ReLateBound, ReScope, ReSkolemized, ReVar};
 
 mod graphviz;
 
+#[derive(Clone, Debug)]
+pub enum RegionResolutionError<'tcx> {
+    /// `ConcreteFailure(o, a, b)`:
+    ///
+    /// `o` requires that `a <= b`, but this does not hold
+    ConcreteFailure(SubregionOrigin<'tcx>, Region<'tcx>, Region<'tcx>),
+
+    /// `GenericBoundFailure(p, s, a)
+    ///
+    /// The parameter/associated-type `p` must be known to outlive the lifetime
+    /// `a` (but none of the known bounds are sufficient).
+    GenericBoundFailure(SubregionOrigin<'tcx>, GenericKind<'tcx>, Region<'tcx>),
+
+    /// `SubSupConflict(v, sub_origin, sub_r, sup_origin, sup_r)`:
+    ///
+    /// Could not infer a value for `v` because `sub_r <= v` (due to
+    /// `sub_origin`) but `v <= sup_r` (due to `sup_origin`) and
+    /// `sub_r <= sup_r` does not hold.
+    SubSupConflict(
+        RegionVariableOrigin,
+        SubregionOrigin<'tcx>,
+        Region<'tcx>,
+        SubregionOrigin<'tcx>,
+        Region<'tcx>,
+    ),
+}
+
 struct RegionAndOrigin<'tcx> {
     region: Region<'tcx>,
     origin: SubregionOrigin<'tcx>,
@@ -327,7 +355,11 @@ fn collect_errors(
                         sup
                     );
 
-                    errors.push(RegionResolutionError::ConcreteFailure((*origin).clone(), sub, sup));
+                    errors.push(RegionResolutionError::ConcreteFailure(
+                        (*origin).clone(),
+                        sub,
+                        sup,
+                    ));
                 }
 
                 Constraint::VarSubReg(a_vid, b_region) => {
index 91989d7b106da29c95818ed5e0c977a97f830211..d5997aa0662f52adaa96c3828ca5afff3a0bfc20 100644 (file)
@@ -142,31 +142,6 @@ enum CombineMapType {
     Glb,
 }
 
-#[derive(Clone, Debug)]
-pub enum RegionResolutionError<'tcx> {
-    /// `ConcreteFailure(o, a, b)`:
-    ///
-    /// `o` requires that `a <= b`, but this does not hold
-    ConcreteFailure(SubregionOrigin<'tcx>, Region<'tcx>, Region<'tcx>),
-
-    /// `GenericBoundFailure(p, s, a)
-    ///
-    /// The parameter/associated-type `p` must be known to outlive the lifetime
-    /// `a` (but none of the known bounds are sufficient).
-    GenericBoundFailure(SubregionOrigin<'tcx>, GenericKind<'tcx>, Region<'tcx>),
-
-    /// `SubSupConflict(v, sub_origin, sub_r, sup_origin, sup_r)`:
-    ///
-    /// Could not infer a value for `v` because `sub_r <= v` (due to
-    /// `sub_origin`) but `v <= sup_r` (due to `sup_origin`) and
-    /// `sub_r <= sup_r` does not hold.
-    SubSupConflict(RegionVariableOrigin,
-                   SubregionOrigin<'tcx>,
-                   Region<'tcx>,
-                   SubregionOrigin<'tcx>,
-                   Region<'tcx>),
-}
-
 #[derive(Copy, Clone, Debug)]
 pub enum VarValue<'tcx> {
     Value(Region<'tcx>),