[Wisp-cvs] wisp/users/dig tran-builtins,1.36,1.37 tran.py,1.116,1.117
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2003-05-18 17:43:30
|
Update of /cvsroot/wisp/wisp/users/dig In directory sc8-pr-cvs1:/tmp/cvs-serv27270 Modified Files: tran-builtins tran.py Log Message: implemented |needs| Index: tran-builtins =================================================================== RCS file: /cvsroot/wisp/wisp/users/dig/tran-builtins,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- tran-builtins 18 May 2003 17:22:55 -0000 1.36 +++ tran-builtins 18 May 2003 17:43:27 -0000 1.37 @@ -135,6 +135,12 @@ include|name interpreter.toksrc.push(Lexer(str(name) + '.tran')) + interpreter.included[name] = 1 + +needs|name + if not interpreter.included.has_key(name): + interpreter.toksrc.push(Lexer(str(name) + '.tran')) + interpreter.included[name] = 1 '|name if not name[0] in '&#!': name = '&' + name Index: tran.py =================================================================== RCS file: /cvsroot/wisp/wisp/users/dig/tran.py,v retrieving revision 1.116 retrieving revision 1.117 diff -u -d -r1.116 -r1.117 --- tran.py 18 May 2003 17:36:44 -0000 1.116 +++ tran.py 18 May 2003 17:43:27 -0000 1.117 @@ -228,7 +228,7 @@ return um class Interpreter (object): - __slots__ = 'sections current recordee regpaths hanging regstack state meaning register_names toksrc'.split() + __slots__ = 'sections current recordee regpaths hanging regstack state meaning register_names toksrc included'.split() universal_meaning = make_universal_meaning('tran-builtins') def make_section_switcher (this, name): @@ -259,6 +259,7 @@ this.state = this.outer_state this.toksrc = None # only used during interpretation this.run('builtin.tran') + this.included = {} def match_generator (this, root): yield root if len(this.regstack) < 1: yield None # want more registers |