def __init__(self, document, inverted_index): """Constructor. Args: document: The ScoredDocument to evaluate the expression for. inverted_index: The search index (used for snippeting). """ self._doc = document self._doc_pb = document.document self._inverted_index = inverted_index self._tokenizer = simple_tokenizer.SimpleTokenizer(preserve_case=False) self._case_preserving_tokenizer = simple_tokenizer.SimpleTokenizer( preserve_case=True) self._function_table = { ExpressionParser.ABS: self._Unsupported('abs'), ExpressionParser.COUNT: self._Count, ExpressionParser.DISTANCE: self._Unsupported('distance'), ExpressionParser.GEOPOINT: self._Unsupported('geopoint'), ExpressionParser.LEN: self._Unsupported('len'), ExpressionParser.LOG: self._Unsupported('log'), ExpressionParser.MAX: self._Max, ExpressionParser.MIN: self._Min, ExpressionParser.POW: self._Unsupported('pow'), ExpressionParser.SNIPPET: self._Snippet, ExpressionParser.SWITCH: self._Unsupported('switch'), }
def __init__(self, document, inverted_index, is_sort_expression=False): """Constructor. Args: document: The ScoredDocument to evaluate the expression for. inverted_index: The search index (used for snippeting). is_sort_expression: The flag indicates if this is a sort expression. Some operations (such as COUNT) are not supported in sort expressions. """ self._doc = document self._doc_pb = document.document self._inverted_index = inverted_index self._tokenizer = simple_tokenizer.SimpleTokenizer(preserve_case=False) self._case_preserving_tokenizer = simple_tokenizer.SimpleTokenizer( preserve_case=True) self._function_table = { ExpressionParser.ABS: self._Unsupported('abs'), ExpressionParser.COUNT: self._Count, ExpressionParser.DISTANCE: self._Distance, ExpressionParser.GEOPOINT: self._Geopoint, ExpressionParser.LOG: self._Unsupported('log'), ExpressionParser.MAX: self._Max, ExpressionParser.MIN: self._Min, ExpressionParser.POW: self._Unsupported('pow'), ExpressionParser.SNIPPET: self._Snippet, ExpressionParser.SWITCH: self._Unsupported('switch'), } self._is_sort_expression = is_sort_expression
def __init__(self, document, inverted_index): """Constructor. Args: document: The ScoredDocument to evaluate the expression for. inverted_index: The search index (used for snippeting). """ self._doc = document self._doc_pb = document.document self._inverted_index = inverted_index self._tokenizer = simple_tokenizer.SimpleTokenizer(preserve_case=False) self._case_preserving_tokenizer = simple_tokenizer.SimpleTokenizer( preserve_case=True) self._function_table = { 'max': self._Max, 'min': self._Min, 'count': self._Count, 'snippet': self._Snippet, 'distance': self._Unsupported('distance'), }
def __init__(self, index_spec): self._index_spec = index_spec self._documents = {} self._parser = simple_tokenizer.SimpleTokenizer(split_restricts=False) self._inverted_index = RamInvertedIndex( simple_tokenizer.SimpleTokenizer())
def __init__(self, query, inverted_index): self._query = query self._inverted_index = inverted_index self._parser = simple_tokenizer.SimpleTokenizer()