Mercurial > hg > MakeItSo
comparison makeitso/template.py @ 64:c20277dbf8fa
closer to substitution
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Thu, 06 Jan 2011 18:04:58 -0800 |
| parents | b91133e3b02d |
| children | 0152741621c1 |
comparison
equal
deleted
inserted
replaced
| 63:b91133e3b02d | 64:c20277dbf8fa |
|---|---|
| 108 return vars | 108 return vars |
| 109 | 109 |
| 110 def missing(self, **variables): | 110 def missing(self, **variables): |
| 111 vars = self.get_variables(**variables) | 111 vars = self.get_variables(**variables) |
| 112 missing = set([]) | 112 missing = set([]) |
| 113 | |
| 114 # get known needed variables | |
| 115 for var in self.vars: | |
| 116 if var.name not in vars: | |
| 117 missing.add(var) | |
| 118 | |
| 113 if self.look: | 119 if self.look: |
| 114 pass | 120 # scan templates for other variables |
| 115 else: | 121 raise NotImplementedError |
| 116 for var in self.vars: | 122 |
| 117 if self.usedefaults: | 123 return missing |
| 118 import pdb; pdb.set_trace() | |
| 119 else: | |
| 120 pass | |
| 121 | 124 |
| 122 def pre(self, **variables): | 125 def pre(self, **variables): |
| 123 """do stuff before interpolation""" | 126 """do stuff before interpolation""" |
| 124 | 127 |
| 125 def substitute(self, **variables): | 128 def substitute(self, **variables): |
| 126 """do the substitution""" | 129 """do the substitution""" |
| 127 vars = self.get_variables(**variables) | 130 vars = self.get_variables(**variables) |
| 128 self.pre(**variables) | 131 self.pre(**vars) |
| 129 self.check_missing(vars) | 132 self.check_missing(vars) |
| 133 | |
| 134 # do the substitution | |
| 135 PolyTemplate(self.templates, | |
| 136 output=self.output, | |
| 137 interactive=self.interactive, | |
| 138 variables = vars | |
| 139 | |
| 140 | |
| 130 self.post(**variables) | 141 self.post(**variables) |
| 131 | 142 |
| 132 def post(self, **variables): | 143 def post(self, **variables): |
| 133 """do stuff after interpolation""" | 144 """do stuff after interpolation""" |
| 134 | 145 |
