From 45ddcdec01b8839040b22d3d5f3234ea790d3d08 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Wed, 21 Oct 2009 17:24:40 +0200 Subject: [PATCH] Added subroutine dependencies Version:1.1.38 Version:1.1.38 --- src/parsed_text.py | 16 +++++++--------- src/util.py | 6 +----- src/version.py | 2 +- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/src/parsed_text.py b/src/parsed_text.py index 559f179..af42a45 100644 --- a/src/parsed_text.py +++ b/src/parsed_text.py @@ -122,17 +122,16 @@ def get_parsed_text(): error.fail(line,"Variable %s is unknown"%(v)) result.append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) elif isinstance(line,Call): + l = find_variables_in_line(line) + l = filter(lambda x: x not in varlist, l) sub = find_subroutine_in_line(line) if sub not in subroutines: t = Simple_line + result.append( (l,Simple_line(line.i,line.text,line.filename)) ) else: - if subroutines[sub].touches == []: - t = Simple_line - else: - t = Provide_all - l = find_variables_in_line(line) - l = filter(lambda x: x not in varlist, l) - result.append( (l,t(line.i,line.text,line.filename)) ) + result.append( (l,line) ) + if subroutines[sub].touches != []: + result.append( ([],Provide_all(line.i,"",line.filename)) ) elif isinstance(line,Free): vars = line.text.split() if len(vars) < 2: @@ -383,7 +382,6 @@ def find_vars_from_functions(): return main_result parsed_text = find_vars_from_functions() -parsed_text = move_variables() ###################################################################### def build_needs(): @@ -439,7 +437,7 @@ parsed_text = result ###################################################################### if __name__ == '__main__': for i in range(len(parsed_text)): - if parsed_text[i][0] == 'jastrow.irp.f': + if parsed_text[i][0] == 'orbitalJastrow.irp.f': print '!-------- %s -----------'%(parsed_text[i][0]) for line in parsed_text[i][1]: print line[1] diff --git a/src/util.py b/src/util.py index 5f2c182..edd51a8 100644 --- a/src/util.py +++ b/src/util.py @@ -71,11 +71,7 @@ def find_subname(line): if not buffer.endswith(')'): buffer += "()" buffer = buffer.split('(') - if len(buffer) > 1: - buffer = " ".join(buffer[:-1]) - else: - buffer = buffer[0] - buffer = buffer.lower().split() + buffer = buffer[0].lower().split() if len(buffer) < 2: error.fail(line,"Syntax Error") return buffer[-1] diff --git a/src/version.py b/src/version.py index fe19285..56b3a3d 100644 --- a/src/version.py +++ b/src/version.py @@ -1 +1 @@ -version = "1.1.35" +version = "1.1.38"