def add(self, filter_or_query):
if isinstance(filter_or_query, Filter):<EOL><INDENT>if self.queries:<EOL><INDENT>raise QueryError("<STR_LIT>")<EOL><DEDENT>self.filters.append(filter_or_query)<EOL><DEDENT>elif isinstance(filter_or_query, Query):<EOL><INDENT>if self.filters:<EOL><INDENT>raise QueryError("<STR_LIT>")<EOL><DEDENT>self.queries.append(filter_or_query)<EOL><DEDENT>else:<EOL><INDENT>for item in filter_or_query:<EOL><INDENT>self.add(item)<EOL><DEDENT><DEDENT>return self<EOL>
Add a filter, or a list of filters, to the query.

        If a sequence of filters is supplied, they are all added, and will be
        combined with an ANDFilter.

        If a sequence of queries is supplied, they are all added, and will be
        combined with an BooleanQuery(must) .