| /* Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| parcel Lucy; |
| |
| /** Intersect multiple result sets. |
| * |
| * ANDQuery is a composite L<Query|Lucy::Search::Query> which matches |
| * only when all of its children match, so its result set is the intersection |
| * of their result sets. Documents which match receive a summed score. |
| */ |
| class Lucy::Search::ANDQuery inherits Lucy::Search::PolyQuery |
| : dumpable { |
| |
| inert incremented ANDQuery* |
| new(VArray *children = NULL); |
| |
| /** |
| * @param children An array of child Queries. |
| */ |
| public inert ANDQuery* |
| init(ANDQuery *self, VArray *children = NULL); |
| |
| public incremented Compiler* |
| Make_Compiler(ANDQuery *self, Searcher *searcher, float boost); |
| |
| public incremented CharBuf* |
| To_String(ANDQuery *self); |
| |
| public bool_t |
| Equals(ANDQuery *self, Obj *other); |
| } |
| |
| class Lucy::Search::ANDCompiler |
| inherits Lucy::Search::PolyCompiler { |
| |
| inert incremented ANDCompiler* |
| new(ANDQuery *parent, Searcher *searcher, float boost); |
| |
| inert ANDCompiler* |
| init(ANDCompiler *self, ANDQuery *parent, Searcher *searcher, |
| float boost); |
| |
| public incremented nullable Matcher* |
| Make_Matcher(ANDCompiler *self, SegReader *reader, bool_t need_score); |
| } |
| |
| |