| 153 | |
| 154 | |
| 155 | class Argument(ChildPattern): |
| 156 | |
| 157 | def single_match(self, left): |
| 158 | for n, p in enumerate(left): |
| 159 | if type(p) is Argument: |
| 160 | return n, Argument(self.name, p.value) |
| 161 | return None, None |
| 162 | |
| 163 | @classmethod |
| 164 | def parse(class_, source): |
| 165 | name = re.findall('(<\S*?>)', source)[0] |
| 166 | value = re.findall('\[default: (.*)\]', source, flags=re.I) |
| 167 | return class_(name, value[0] if value else None) |
| 168 | |
| 169 | |
| 170 | class Command(Argument): |
no outgoing calls
searching dependent graphs…