The following listing shows you all available options to restrict a search:
:module Prelude (also :m Prelude)
Searches for modules starting with Prelude, without a following name, it searches for all modules.
:inModule Prelude (also :in Prelude)
Restricts the search to the module Prelude, but searches for all contexts.
:inPackage base (also :ip base)
Restricts the search to the package base, but searches for all contexts.
:function map (also :f map)
Searches for functions starting with map, without a following name, it searches for all functions.
:type Either (also :t Either)
Searches for types starting with Either, without a following name, it searches for all types.
:class Functor (also :c Functor)
Searches for type classes starting with Functor, without a following name, it searches for all type classes.
:author Sandra (also :a Sandra)
Searches for modules with Sandra as the author.
:det name (also :d name)
:nondet name (also :nd name)
:flexible name (also :fl name)
:rigid name (also :ri name)
Searches for (non-)deterministic/flexible/rigid functions, a following name is optional.
:signature a -> String (also :s a -> String)
a -> String
(a -> String)
Searches for signatures starting with a -> String.
A search term enclosed in parenthesis is automatically parsed as a signature.
To search for signatures with type constraints, add a function arrow (->) between each constraint and the remaining signature.
term1 (AND|OR|NOT) term2
The keywords AND, OR and NOT can be used as binary operators.
The AND operator is optional, because all parts of a query are combined with AND.
A search term can be enclosed in braces to allow nested expressions.