!n`      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None"#M  homplexityMessage severity  homplexityMessage from analysis  homplexityKeeps a set of messages  homplexity'String showing all possible values for Severity.  homplexity1Helper for logging a message with given severity.  homplexity@TODO: automatic inference of the srcLine | Log a certain error homplexity Log a warning homplexityLog informational message homplexityLog debugging message homplexityConvert Log into ordered sequence (Seq). homplexity1Extract an ordered sequence of messages from the Log.    None"#=?+( homplexityGCompute the slice of code that given source fragment is in (for naming) #$%&'()*+ #('+)%&$*None"#%2=>?@AHVX*, homplexityClass  CodeFragmentz allows for: * both selecting direct or all descendants of the given type of object within another structure (with occurs and  allOccurs7) * naming the object to allow user to distinguish it.;In order to compute selection, we just need to know which ASTL nodes contain the given object, and how to extract this given object from AST, if it is there (matchAST).:w homplexityAlias for a class signature/ homplexity3Type alias for a type signature of a function as a  CodeFragment4 homplexity Alias for a function declaration: homplexityProgram= homplexity<Smart constructor for adding cross-references in the future.> homplexityProxy for passing Program type as an argument.? homplexityProxy for passing Function type as an argument.@ homplexityProxy for passing Program type as an argument.A homplexityFirst location for each  CodeFragment - for convenient reporting. homplexityMake a single element list.B homplexityDirect occurences of given  CodeFragment# fragment within another structure.C homplexityExplicitly typed variant of occurs.E homplexityExplicitly typed variant of  allOccurs.F homplexityProxy for passing Module type as an argument. homplexityUnpack Name identifier into a String.,-./0123456789:;<=>?@ABCDEF,-.BCDE:;<>=F456789?/0123@ANone=?@AMX2(R homplexity)Number of lines of code (example metric)S homplexity#Metric can be computed on a set of  CodeFragment fragments and then shown.U homplexityProxy for passing LOC type as parameter.V homplexity$Convenience function for fixing the Metric type.W homplexity)Convenience function for fixing both the Metric and  CodeFragment" for which the metric is computed.RSTUVWSTRUVWNone "#=>?@AMX> a homplexityDecision depthb homplexity Represents cyclomatic complexityc homplexity For passing  Cyclomatic type as parameter. homplexity2Computing cyclomatic complexity on a code fragment homplexity6Sum the results of mapping the function over the list. homplexity1Compute cyclomatic complexity of pattern matches. homplexity(Cyclomatic complexity of all expressions homplexity6Sum the results of mapping the function over the list.d homplexity For passing Depth type as parameter. homplexityDepth of branching within Expression. homplexity5Helper function to compute depth of branching within case expression match. homplexityCheck whether given Exp5ression node is a decision node (conditional branch.)abcdbcadNone "#%=>?@AXJ u homplexity4Tagging of source range for each commentable object.y homplexity3Possible link between comment and commented entity.z homplexity<May be counted as commenting object that starts just before.{ homplexity;May be counted as commenting object within which it exists.| homplexity;May be counted as commenting object that starts just after.} homplexityODescribes the comment span, and the way it may be connected to the source code homplexityOClassifies all comments in list, so they can be assigned to declarations later. homplexityDFinds Haddock markers of which declarations the comment pertains to. homplexity&Find comment sites for entire program. homplexity\Take together are commentable elements, and all comments, and order them by source location.uvwxyz{|}~}~yz{|uvwxNone =>?@AXP homplexity1Maximally permissive list of language extensions. homplexity=CppHs options that should be compatible with haskell-src-exts homplexityFor use in test suite homplexity\Parse Haskell source file, using CppHs for preprocessing, and haskell-src-exts for parsing.)Catches all exceptions and wraps them as Critical log messages.None =>?@AMXU homplexity6Sum the results of mapping the function over the list. homplexity*Function computing constructor depth of a Type. homplexity#Check whether given constructor of Type) counts in constructor depth computation. homplexity*Function computing constructor depth of a Type. None"#%12=>?@AX^ homplexity!Type of functions that convert a Metric into a log message. homplexity"Measure all occurences of a given  CodeFragment with a given Metric , then use  Assessment on them and give a list of Log messages.+Arguments come in the following order: 1.  Assessment for the value of the Metric. 2. Metric given as Proxy type. 3.  CodeFragment given as Proxy type. 4. Program containing  CodeFragments. homplexityLCompute all metrics, and assign severity depending on configured thresholds.00 Safe`     !"#$%&'()*+,-./0123456789:;;<=>??@ABCDDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~~                             )homplexity-0.4.4.4-E8dbhgWP9hh22jjrp7bU8l(Language.Haskell.Homplexity.CodeFragment#Language.Haskell.Homplexity.Message$Language.Haskell.Homplexity.SrcSlice"Language.Haskell.Homplexity.Metric&Language.Haskell.Homplexity.Cyclomatic$Language.Haskell.Homplexity.Comments!Language.Haskell.Homplexity.Parse*Language.Haskell.Homplexity.TypeComplexity&Language.Haskell.Homplexity.AssessmentPaths_homplexity.haskell-src-exts-1.20.3-7HfQK7jOWhzIYWQM4jF5YALanguage.Haskell.Exts.SyntaxModule XmlHybridXmlPageSeverityDebugInfoWarningCriticalMessageLogseverityOptionsmessagecriticalwarninfodebugextract$fNFDataSrcLoc$fFlagTypeSeverity$fLiftSeverity$fNFDataSeverity $fShowMessage$fNFDataMessage $fShowLog $fNFDataLog $fEqSeverity $fOrdSeverity$fReadSeverity$fShowSeverity$fEnumSeverity$fBoundedSeverity $fEqMessage $fMonoidLog$fSemigroupLogSrcSlice sliceFilenamesliceFirstLine sliceLastLinesrcLocsrcSlice mergeSrcLocs locAsSpan showSrcSpan CodeFragment fragmentName fragmentSlice TypeSignatureloc identifierstheTypeFunction functionNamesfunctionLocations functionRhs functionBindsProgram allModulesprogramprogramT functionTtypeSignatureT fragmentLococcursoccursOf allOccurs allOccursOfmoduleT$fCodeFragmentTypeSignature$fCodeFragmentModule$fCodeFragmentProgram$fCodeFragmentFunction $fDataProgram $fShowProgram$fDataFunction$fShowFunction$fDataTypeSignature$fShowTypeSignature$fDataClassSignatureLOCMetricmeasurelocT measureAs measureFor $fMetricLOCc $fReadLOC $fShowLOC$fOrdLOC$fEqLOC $fEnumLOC$fNumLOC $fRealLOC $fIntegralLOCDepth Cyclomatic cyclomaticTdepthT$fMetricCyclomaticFunction$fShowCyclomatic $fShowDepth$fMetricDepthFunction$fEqCyclomatic$fOrdCyclomatic$fEnumCyclomatic$fNumCyclomatic$fRealCyclomatic$fIntegralCyclomatic $fEqDepth $fOrdDepth $fEnumDepth $fNumDepth $fRealDepth$fIntegralDepth CommentSitesiteName siteSlice CommentTypeCommentsBeforeCommentsInside CommentsAfter CommentLink commentSpan commentTypeclassifyCommentsfindCommentType commentableorderCommentsAndCommentables $fOrdEnds$fEqCommentType$fOrdCommentType$fEnumCommentType$fShowCommentType$fEqCommentLink$fOrdCommentLink$fShowCommentLink$fEqCommentSite$fShowCommentSite$fEqEnds $fShowEnds parseTest parseSource NumFunArgsConDepth conDepthT numFunArgsT$fMetricConDepthTypeSignature$fShowConDepth$fMetricNumFunArgsTypeSignature$fShowNumFunArgs $fEqConDepth $fOrdConDepth$fEnumConDepth $fNumConDepth$fRealConDepth$fIntegralConDepth$fEqNumFunArgs$fOrdNumFunArgs$fEnumNumFunArgs$fNumNumFunArgs$fRealNumFunArgs$fIntegralNumFunArgs Assessment measureAllmeasureTopOccursmeasureAllOccurs warnOfMeasureHFlag_moduleLinesWarningHFlagC_moduleLinesWarningflags_moduleLinesWarning$fFlagHFlag_moduleLinesWarningHFlag_moduleLinesCriticalHFlagC_moduleLinesCriticalflags_moduleLinesCriticalassessModuleLength$fFlagHFlag_moduleLinesCriticalHFlag_functionLinesWarningHFlagC_functionLinesWarningflags_functionLinesWarning $fFlagHFlag_functionLinesWarningHFlag_functionLinesCriticalHFlagC_functionLinesCriticalflags_functionLinesCriticalassessFunctionLength!$fFlagHFlag_functionLinesCriticalHFlag_functionDepthWarningHFlagC_functionDepthWarningflags_functionDepthWarning $fFlagHFlag_functionDepthWarningHFlag_functionDepthCriticalHFlagC_functionDepthCriticalflags_functionDepthCriticalassessFunctionDepth!$fFlagHFlag_functionDepthCriticalHFlag_functionCCWarningHFlagC_functionCCWarningflags_functionCCWarning$fFlagHFlag_functionCCWarningHFlag_functionCCCriticalHFlagC_functionCCCriticalflags_functionCCCriticalassessFunctionCC$fFlagHFlag_functionCCCriticalHFlag_typeConDepthWarningHFlagC_typeConDepthWarningflags_typeConDepthWarning$fFlagHFlag_typeConDepthWarningHFlag_typeConDepthCriticalHFlagC_typeConDepthCriticalflags_typeConDepthCriticalassessTypeConDepth $fFlagHFlag_typeConDepthCriticalHFlag_numFunArgsWarningHFlagC_numFunArgsWarningflags_numFunArgsWarning$fFlagHFlag_numFunArgsWarningHFlag_numFunArgsCriticalHFlagC_numFunArgsCriticalflags_numFunArgsCriticalassessNumFunArgsmetrics$fFlagHFlag_numFunArgsCriticalorderedMessagesClassSignature singletonunName cyclomaticsumOfcyclomaticOfMatchescyclomaticOfExprsmaxOf depthOfExprdepthOfMatches isDecision myExtensions cppHsOptionsconDepthdeeper numFunArgsversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName