git.iko.soy/typeable/bloodhound
on master help sign in
Merge pull request #212 from andrewthad/match_query_minimum_should_match
07f6bc5Chris Allen
src/Database/V5/Bloodhound/Types.hs+11−4
@@ -1528,13 +1528,15 @@ data MatchQuery =
1528 , matchQueryAnalyzer :: Maybe Analyzer
1528 , matchQueryAnalyzer :: Maybe Analyzer
1529 , matchQueryMaxExpansions :: Maybe MaxExpansions
1529 , matchQueryMaxExpansions :: Maybe MaxExpansions
1530 , matchQueryLenient :: Maybe Lenient
1530 , matchQueryLenient :: Maybe Lenient
1531+ , matchQueryBoost :: Maybe Boost
1532+ , matchQueryMinimumShouldMatch :: Maybe Text
1531− , matchQueryBoost :: Maybe Boost } deriving (Eq, Read, Show, Generic, Typeable)
1533+ } deriving (Eq, Read, Show, Generic, Typeable)
1532
1534
1533{-| 'mkMatchQuery' is a convenience function that defaults the less common parameters,
1535{-| 'mkMatchQuery' is a convenience function that defaults the less common parameters,
1534 enabling you to provide only the 'FieldName' and 'QueryString' to make a 'MatchQuery'
1536 enabling you to provide only the 'FieldName' and 'QueryString' to make a 'MatchQuery'
1535-}
1537-}
1536mkMatchQuery :: FieldName -> QueryString -> MatchQuery
1538mkMatchQuery :: FieldName -> QueryString -> MatchQuery
1537−mkMatchQuery field query = MatchQuery field query Or ZeroTermsNone Nothing Nothing Nothing Nothing Nothing Nothing
1539+mkMatchQuery field query = MatchQuery field query Or ZeroTermsNone Nothing Nothing Nothing Nothing Nothing Nothing Nothing
1538
1540
1539data MatchQueryType =
1541data MatchQueryType =
1540 MatchPhrase
1542 MatchPhrase
@@ -2924,7 +2926,9 @@ instance ToJSON MatchQuery where
2924 toJSON (MatchQuery (FieldName fieldName)
2926 toJSON (MatchQuery (FieldName fieldName)
2925 (QueryString mqQueryString) booleanOperator
2927 (QueryString mqQueryString) booleanOperator
2926 zeroTermsQuery cutoffFrequency matchQueryType
2928 zeroTermsQuery cutoffFrequency matchQueryType
2927− analyzer maxExpansions lenient boost) =
2929+ analyzer maxExpansions lenient boost
2930+ minShouldMatch
2931+ ) =
2928 object [ fieldName .= omitNulls base ]
2932 object [ fieldName .= omitNulls base ]
2929 where base = [ "query" .= mqQueryString
2933 where base = [ "query" .= mqQueryString
2930 , "operator" .= booleanOperator
2934 , "operator" .= booleanOperator
@@ -2934,7 +2938,9 @@ instance ToJSON MatchQuery where
2934 , "analyzer" .= analyzer
2938 , "analyzer" .= analyzer
2935 , "max_expansions" .= maxExpansions
2939 , "max_expansions" .= maxExpansions
2936 , "lenient" .= lenient
2940 , "lenient" .= lenient
2937− , "boost" .= boost ]
2941+ , "boost" .= boost
2942+ , "minimum_should_match" .= minShouldMatch
2943+ ]
2938
2944
2939instance FromJSON MatchQuery where
2945instance FromJSON MatchQuery where
2940 parseJSON = withObject "MatchQuery" parse
2946 parseJSON = withObject "MatchQuery" parse
@@ -2949,6 +2955,7 @@ instance FromJSON MatchQuery where
2949 <*> o .:? "max_expansions"
2955 <*> o .:? "max_expansions"
2950 <*> o .:? "lenient"
2956 <*> o .:? "lenient"
2951 <*> o .:? "boost"
2957 <*> o .:? "boost"
2958+ <*> o .:? "minimum_should_match"
2952
2959
2953instance ToJSON MultiMatchQuery where
2960instance ToJSON MultiMatchQuery where
2954 toJSON (MultiMatchQuery fields (QueryString query) boolOp
2961 toJSON (MultiMatchQuery fields (QueryString query) boolOp