def analyze(self):
class MockBindings(dict):<EOL><INDENT>def __contains__(self, key):<EOL><INDENT>self[key] = None<EOL>return True<EOL><DEDENT><DEDENT>bindings = MockBindings()<EOL>used = {}<EOL>ancestor = self.ancestor<EOL>if isinstance(ancestor, ParameterizedThing):<EOL><INDENT>ancestor = ancestor.resolve(bindings, used)<EOL><DEDENT>filters = self.filters<EOL>if filters is not None:<EOL><INDENT>filters = filters.resolve(bindings, used)<EOL><DEDENT>return sorted(used)<EOL>
Return a list giving the parameters required by a query.