about summary refs log tree commit diff
diff options
context:
space:
mode:
authorgaurikholkar <f2013002@goa.bits-pilani.ac.in>2018-02-28 00:27:29 +0530
committergaurikholkar <f2013002@goa.bits-pilani.ac.in>2018-03-10 20:52:21 +0530
commit308e30eb7a3ec98392b0cbb0ebad354318a86148 (patch)
treed4cadd544f2f245b546ef7818f7e7e879221e3cd
parent7d590b533ea93ef916cc82498506a373db1843b6 (diff)
downloadrust-308e30eb7a3ec98392b0cbb0ebad354318a86148.tar.gz
rust-308e30eb7a3ec98392b0cbb0ebad354318a86148.zip
adding Visitor changes
-rw-r--r--src/librustc_mir/borrow_check/mod.rs24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/librustc_mir/borrow_check/mod.rs b/src/librustc_mir/borrow_check/mod.rs
index e5e8ffdc2f3..207097a71c3 100644
--- a/src/librustc_mir/borrow_check/mod.rs
+++ b/src/librustc_mir/borrow_check/mod.rs
@@ -17,7 +17,7 @@ use rustc::hir::map::definitions::DefPathData;
 use rustc::infer::InferCtxt;
 use rustc::ty::{self, ParamEnv, TyCtxt};
 use rustc::ty::maps::Providers;
-use rustc::mir::{AssertMessage, BasicBlock, BorrowKind, Location, Place};
+use rustc::mir::{AssertMessage, BasicBlock, BorrowKind, Local, Location, Place, Visitor};
 use rustc::mir::{Mir, Mutability, Operand, Projection, ProjectionElem, Rvalue};
 use rustc::mir::{Field, Statement, StatementKind, Terminator, TerminatorKind};
 use rustc::mir::ClosureRegionRequirements;
@@ -56,6 +56,20 @@ mod prefixes;
 
 use std::borrow::Cow;
 
+struct FindLocalAssignmentVisitor {
+    from: Local,
+    loc: Vec<Location>,
+}
+
+impl<'tcx> Visitor<'tcx> for FindLocalAssignmentVisitor {
+    fn visit_local(&mut self,
+                   local: &mut Local,
+                   _: PlaceContext<'tcx>,
+                   _: Location) {
+         Visitor::visit_local(local,)
+    }
+}
+
 pub(crate) mod nll;
 
 pub fn provide(providers: &mut Providers) {
@@ -2271,3 +2285,11 @@ impl ContextKind {
         }
     }
 }
+
+impl Mir { 
+    fn find_assignments(&self, local: Local) -> Vec<Location> 
+    { 
+
+    }
+}
+