Holumbus-Searchengine-1.2.3: A search and indexing engine.

Portabilityportable
Stabilityexperimental
MaintainerTimo B. Huebel (tbh@holumbus.org)
Safe HaskellNone

Holumbus.Query.Processor

Contents

Description

The Holumbus query processor. Supports exact word or phrase queries as well as fuzzy word and case-insensitive word and phrase queries. Boolean operators like AND, OR and NOT are supported. Context specifiers and priorities are supported, too.

Synopsis

Processor types

data ProcessConfig Source

The configuration for the query processor.

Constructors

ProcessConfig 

Fields

fuzzyConfig :: !FuzzyConfig

The configuration for fuzzy queries.

optimizeQuery :: !Bool

Optimize the query before processing.

wordLimit :: !Int

The maximum number of words used from a prefix. Zero switches off limiting.

docLimit :: !Int

The maximum number of documents taken into account. Zero switches off limiting.

Processing

processQuery :: (HolIndex i, HolDocuments d c) => ProcessConfig -> i -> d c -> Query -> Result cSource

Process a query on a specific index with regard to the configuration.

processPartial :: HolIndex i => ProcessConfig -> i -> Int -> Query -> IntermediateSource

Process a query only partially in terms of a distributed index. Only the intermediate result will be returned.

processQueryM :: (HolIndexM m i, HolDocuments d c) => ProcessConfig -> i -> d c -> Query -> m (Result c)Source

Monadic version of processQuery.

processPartialM :: HolIndexM m i => ProcessConfig -> i -> Int -> Query -> m IntermediateSource

Monadic version of processPartial.