Portability | portable |
---|---|
Stability | experimental |
Maintainer | Timo B. Huebel (tbh@holumbus.org) |
Safe Haskell | None |
Version : 0.2
The Holumbus query language definition.
The specific syntax of any query language can be designed independently by creating appropriate parsers. Also see Holumbus.Query.Language.Parser.
Query data types
The query language.
Word String | Single case-insensitive word. |
Phrase String | Single case-insensitive phrase. |
CaseWord String | Single case-sensitive word. |
CasePhrase String | Single case-sensitive phrase. |
FuzzyWord String | Single fuzzy word. |
Specifier [Context] Query | Restrict query to a list of contexts. |
Negation Query | Negate the query. |
BinQuery BinOp Query Query | Combine two queries through a binary operation. |
A binary operation.
Optimizing
optimize :: Query -> QuerySource
Transforms all (BinQuery And q1 q2)
where one of q1
or q2
is a Negation
into
BinQuery Filter q1 q2
or BinQuery Filter q2 q1
respectively.
checkWith :: (String -> Bool) -> Query -> BoolSource
Check if the query arguments comply with some custom predicate.
extractTerms :: Query -> [String]Source
Returns a list of all terms in the query.