úÎm$igF      !"#$%&'()*+,-./0123456789:;<=>?@ABCDE Safe-Inferred Safe-Inferred Safe-Inferred:M"Summary of all QuickCheck results. FSpecifies a single item to test, along with metadata about that item.Description of a module.Path to the module"Each part of the hierarchical nameFDescription of a single property or tree to test from a file. Unlike Item[, this does not contain the actual item; this is for use when parsing a test input module.*Metadata about a particular test or group.*Name of file providing this test or group.!Line number of the test or group.'The name of the test or group, such as  prop_mytest or proptree_mytest."A single property or tree to test.A QuickCheck test to run.&A group of tests. Contains a list of  , each of which might be a  or another . —A tree of tests. This allows you to group tests for convenient display; it also allows you to write computations that return entire groups of tests.$ Creates a .% Create a new  of tests.& Create a new .$  !"#$%Reading was started in this directoryDirectory stackName of specific file%.Group name; a string with no trailing newline.&-Test name; a string with no trailing newline.'#  !"#$%&$ !"#'$  %&    !"#$%&' Safe-Inferred(yTakes a stack of directories and a directory where reading was started; returns a single path to the relevant directory.+)Pulls all modules from a given directory.,qPulls all modules from the given directory. A module is any file that begins with a capital letter and ends in .hs.-DPulls all properties from the text of a file. Properties that are Testable must begin with prop_. Properties that are a   must begin with  proptree_.Steps in this computation:Split text into linesAdd line numberssExtract all lines that have a word in the first column; keep only this first word and discard the rest of the lineìSort list by this first word, then reverse the list so that the second occurrence of the word is earlier in the list. This way, if there is a type signature followed by a definition, the type signature is discarded in the next step.use F3 to remove duplicate words, such as type signaturesCsort words by line number order, so they're in original order againCreate Qinfo%; here, words that do not start with prop_ or  proptree_ are discarded.Given a +, reads the module from disk and parses it.()*+eStack of directories. When descending through a tree, add new directories to the head of this list.%Reading was started in this directory,bStart reading at this directory. This must be a directory; otherwise a runtime error will occur.- Module text.()*+,-.()*+,-.()*+,-. Safe-Inferred/Tests the monad laws:Left identity: return a >>= f == f aRight identity: m >>= return == mAssociativity: *(m >>= f) >>= g == m >>= (\x -> f x >>= g)0Tests the functor laws:  fmap id == id fmap (f . g) == fmap f . fmap g1Tests the Applicative laws: identity: pure id <*> v == v composition: -pure (.) <*> u <*> v <*> w == u <*> (v <*> w) homomorphism: pure f <*> pure x = pure (f x) interchange: u <*> pure y = pure ($ y) <*> u2Tests the monoid laws: mappend mempty x = x mappend x mempty = x 1mappend x (mappend y z) = mappend (mappend x y) z mconcat = foldr mappend mempty3=Tests whether a particular operation is associative, that is: "a `f` (b `f` c) == (a `f` b) `f` c4=Tests whether a particular operation is commutative, that is: a `f` b == b `f` a5?Tests whether a particular value is the left identity, that is:  z `f` a == a6@Tests whether a particular value is the right identity, that is:  a `f` z == a/%Generates a computation in the monad.WGenerates a function that, when applied to an Int, returns a computation in the monad.:Generates a function that runs a computation in the monad.0'Generates a computation in the functor.1Generates a computation that unwraps the functor.1+Generates a computation in the Applicative.(Generates a function in the Applicative.!Generates an unwrapping function.2Generates monoid valuesGenerates unwrappers3"Generates an associative operationGenerates unwrappersGenerates values4!Generates a commutative operationGenerates unwrappersGenerates values5Generates the operation to testGenerates unwrappersGenerates identity values Generates right-hand side values6Generates the operation to testGenerates unwrappersGenerates identity valuesGenerates left-hand side values/0123456/0123456/0123456 Safe-Inferred:#Summarizes a Meta in a single line.7Leader character89:;<Name to use for module=789:;<=789:;<=789:;<= Safe-InferredHM> Checks a  T and prints the result to standard output in addition to returning it as a list of G. Each   returns a list of G (a  returns a single G , while a  returns a G for each test in the tree.)? Checks a  i and prints the result to standard output. Intended for use in a REPL; however, the QuickCheck docs in Test.QuickCheck\ contain warnings about how type defaulting in GHCi can cause types to silently default to ()9; all those warnings also apply to use of this function.@Tests a  N and prints the result to standard output in addition to returning a list of G. Each   returns a list of G (a  returns a single G , while a  returns a G for each test in the tree.)ATallies up the Gs.BpExit successfully if there were no failures, give-ups, or no-expected-failures; otherwise, exit unsuccessfully.C Tests each  i using a custom function that you specify; this allows you to vary the test depending on what's in the  . Each   returns a list of G (a  returns a single G , while a  returns a Gs for each test in the tree.) The tests are printed to standard output as they run, in addition to returning the G.D Tests each  y and prints the results to standard output. Exits successfully if all tests succeeded; otherwise, exits unsuccessfully.•Not recommended for REPL use as this function will either kill your REPL when it's done or, in the case of recent GHC versions, issue an exception.ELike D< but allows you to pass arguments to the QuickCheck driver.•Not recommended for REPL use as this function will either kill your REPL when it's done or, in the case of recent GHC versions, issue an exception. >?@ABCHDE>?@ABCDE?>@CDEAB >?@ABCHDE Safe-Inferred  %&?DE %& ?DEI    !"#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN OPQRquickpull-0.4.0.0Quickpull.EqShowQuickpull.FormattingQuickpull.TypesQuickpull.FilesQuickpull.LawsQuickpull.RenderQuickpull.Runners QuickpullQuickCheck-2.7.6Test.QuickCheck.Property=== indentAmtindent<+>SummarysuccessgaveUpfailurenoExpectedFailureDecreemetaitemModDescmodPathmodNameQualQPropQTreeMetamodDesclinenumqNameArticleMultiSingleNodeTestGroupTestTreelabelpayload makeModDescgrouptest$fShowTestTree concatDirsisInterestingFileisInterestingDirmodsInDirectory allModulesgetQuals readAndParsemonadfunctor applicativemonoid associative commutative leftIdentity rightIdentitymetaQual metaQualsimportsmetaLine topComments testModulesummarytreeWithResultquickCheckTreedecreeWithResult summarizeexitCode seeDecree defaultMaindefaultMainWithbase Data.ListnubByTest.QuickCheck.TestResult testDecrees