From b453c3c72825f70499819d97b879c805cac1e5b1 Mon Sep 17 00:00:00 2001 From: Graydon Hoare Date: Tue, 3 May 2011 15:50:56 -0700 Subject: Start sketching --depend support in rustc. --- src/comp/front/eval.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/comp/front/eval.rs') diff --git a/src/comp/front/eval.rs b/src/comp/front/eval.rs index 06fa9cea..a1b3392c 100644 --- a/src/comp/front/eval.rs +++ b/src/comp/front/eval.rs @@ -24,8 +24,15 @@ tag val { val_str(str); } +tag eval_mode { + mode_depend; + mode_parse; +} + type env = vec[tup(ident, val)]; type ctx = @rec(parser p, + eval_mode mode, + mutable vec[str] deps, session.session sess, mutable uint chpos); @@ -383,6 +390,11 @@ fn eval_crate_directive(ctx cx, auto full_path = prefix + std.fs.path_sep() + file_path; + if (cx.mode == mode_depend) { + cx.deps += vec(full_path); + ret; + } + auto start_id = cx.p.next_def_id(); auto p0 = new_parser(cx.sess, e, start_id, full_path, cx.chpos); auto m0 = parse_mod_items(p0, token.EOF); -- cgit v1.2.3