zoV      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ RSTU Safe6Given a directory, returns the list of subdirectories. NoneAITL that will run a command and return an empty list. Useful for making clean s. Use sparingly.L that will return all files in a given directory tree that pass the filter.d that will return all files in a given directory (but not its subdirectories) that pass the filter.# that will return exactly one file.VLType wrapper for a function to determine if a file should be returned by a .#Existential data type for wrapping W)s so they can be used as a uniform type.W]Typeclass representing data types that can be used to collect files for input into a target.XEFunction that, given the strategy, will produce a list of file paths.ZDescribes a build target. Takes a name, checksum function, list of dependencies, list of s, and a list of s.YDType wrapper for a function that given a Target produces a checksum.1Type describing a build stage. Takes a name, an  ,  4, additional dependencies, and the builder function. )Type wrapper for a function that given a  , produces either a  7 containing the output files in the input, or an error. )Type wrapper for a function that takes a   and produces a  ) with dependencies included in the input. 2Type wrapper for functions transforming a list of  s into a list of   s suitable for passing into the  . ?Data type for expressing mapping of input files to output filesOne input to one output file.$One input file to many output files.$Many input files to one output file. Many input to many output files.Z6Newtype wrapper for the build monad transformer stack.[)Configuration arguments used by the build\The target to build.]*The maximum number of build jobs to spawn.^@Internal type that contains information state used by the build._WType wrapper for the dictionary of arguments that are extracted from the command line.`SType wrapper for the list of database updates that will happen after a successful  build.a1Type wrapper for the set of currently up-to-date s.b.Type wrapper for the target checksum database.c'Type wrapper for the checksum database.d/Type wrapper for the target timestamp database.e(Type wrapper for the timestamp database./fghiVjWXY Zkl[m\]^n_`abcdeopqrs*fghiVjWXY Zkl[m\]^n_`abcdefghiVjWXY Zkl[m\]^n_`abcdeopqrsNone.A stage that does nothing and just passes the   s through.  None:ADIT>Takes in a list of include directories, extra dependencies, a  , and returns a new  6 with the dependencies injected into the source side.!tuvwxyz{|}~tuvwxyz{|}~None Runs a list of 0s and returns the concatenation of their output.Convenience function to turn a W into a . Constructs a  that returns a single file.  Constructs a _ that returns all files in a directory (but not its subdirectories) that match a given filter.! Constructs a G that returns all files in a directory tree that match a given filter." Constructs a  that runs an arbitrary  action.IRecursively gets all files in the given directory and its subdirectories.#'Filter function that returns all files.$:Filter function that returns files with a given extension.%JFilter function that returns files that match any of a list of extensions.&[Filter function that returns files with a given extension that don't match exclusion rules.'oFilter function that returns files that match any of a list of extensions, but don't match the exclusion rules. !"#$%&'()*+ !"#$%&' !"#$&%' !"#$%&'()*+None,Adds a dependency on another .-Adds a dependency on a list of s..Gets dependencies of a ./Makes a 8 that doesn't build anything but can be used as a meta  , i.e. the "all" target in make.0Makes a  that runs an arbitrary  action.1<Computes a checksum from the direct dependencies of a target,-./01,-./01,-./01,-./01None26The data type for specifying where built files end up.3Specifies that object files will end up adjacent to their source files and the executable will be in the same directory as the dib.hs file.4NSpecifies that the object files and executable will go in a certain directory.5kSpecifies that the object files will go in the first directory and the executable in the second directory.6JThe record type that is used to pass configuration info for the C builder.8The name of the output file.9The name of the . Should be unique among all s in a given build.:4The directory containing the source for this target.;A 27 that defines where the object and executable files go.<The compiler executable.=The linker executable.>The archiver executable.?+The command line option for the input file.@,The command line option for the output file.The compiler's include optionACompiler flags.B Linker flags.CArchiver flags.DA list of directories where include files can be found. Used for dependency scanning and automatically appended to the compile line.EExtra compilation dependencies.FExtra linking dependencies.G Files to exclude from the build.H9Whether or not to build a static lib (using the archiver)Given a 6 and a , produces a checksumIAn empty configuration.J A default configuration for gcc.K A default configuration for g++.L"A default configuration for clang.MGiven a 6:, will make the directories required to build the project.NGiven a 6 , produces a OGiven a 6 , produces a  that will clean the project.'23456789:;<=>?@ABCDEFGHIJKLMNO23456789:;<=>?@ABCDEFGHIJKLMNO6789:;<=>?@ABCDEFGH2345NOMIJKL23456789:;<=>?@ABCDEFGHIJKLMNONonePThe P function makes a target that copies a directory tree. It takes a name, a source directory, destination directory, and gather filter.PPPP NoneQThe Q function generates a target. It takes a name, source directory, destination directory, destination extension, gather filter, and a function to build the command line.QQQQNoneR`The function that should be called to dispatch the build. Takes a list of the top-level (root) s.S Returns the argument dictionary.T|Adds all of the variables in the execution environment into the argument dictionary. Allows for make-like variable passing.UMakes a function that can be used to look up a value in the argument dictionary, returning a default value if the argument does not exist. Returns the e from the ^ Puts the e back into the ^PReturns whether or not a target is up to date, based on the current build state."Partitions out up-to-date mappings5RSTU RSTU RSTU5RSTU                  !"#$%&'()*+,-./0123456789:;<=>??@ABCDEFGHIJKLMNOPQRSTUVWX YZ[\] ^ _ ` a b c d e f g h i j k l m      n o c f p q r s tuuvwxyz{{|}~  dib-0.5.0-KqGc8DXNuM8FOeTmv3G8QfDib.Util Dib.Gatherers Dib.Target Dib.StageDibDib.Scanners.CDepScannerDib.Builders.CDib.Builders.CopyDib.Builders.Simple Dib.TypesgetSubDirectoriesCommandGathererFileTreeGathererDirectoryGathererSingleFileGathererGathererTargetStage StageFunc DepScannerInputTransformer SrcTransformOneToOne OneToMany ManyToOne ManyToMany emptyStage cDepScanner$fOrdDependency$fEqDependency$fShowDependency$fShowParseState$fFunctorDepGatherer$fApplicativeDepGatherer$fMonadDepGatherer$fMonadIODepGatherer$fMonadStateDepGatherer runGathererswrapGatherStrategymakeSingleFileGatherermakeDirectoryGatherermakeFileTreeGatherermakeCommandGatherermatchAllmatchExtensionmatchExtensionsmatchExtensionExcludedmatchExtensionsExcluded$fGatherStrategyCommandGatherer $fGatherStrategyFileTreeGatherer!$fGatherStrategyDirectoryGatherer"$fGatherStrategySingleFileGatherer addDependencyaddDependenciesgetDependenciesmakePhonyTargetmakeCommandTargettargetDepChecksum BuildLocationInPlaceBuildDir ObjAndBinDirs CTargetInfo outputName targetNamesrcDiroutputLocationcompilerlinkerarchiver inFileOption outFileOption compileFlags linkFlags archiverFlags includeDirsextraCompileDeps extraLinkDeps exclusions staticLibrary emptyConfigdefaultGCCConfigdefaultGXXConfigdefaultClangConfig makeBuildDirs makeCTargetmakeCleanTargetmakeCopyTargetmakeSimpleTargetdib getArgDict addEnvToDictmakeArgDictLookupFunc FilterFuncGatherStrategygather ChecksumFuncBuildM BuildArgs buildTarget maxBuildJobs BuildStateArgDictPendingDBUpdatesUpToDateTargetsTargetChecksumDB ChecksumDBTargetTimestampDB TimestampDB BuildMImpl runBuildImpl$fSerializeText $fOrdTarget $fEqTarget $fEqStage $fShowTarget DepGathererrunDepGatherer ParseStatePS currentDeps searchPaths DependencygetPathFromDepremoveCRremoveLeadingWSremoveBlockCommentremoveLineCommentprocessCharLiteralprocessStringLiteralprocessDirectiveremoveComments filterBlankextractIncludesdequoteIncludepass1pass2gatherDependenciespossibleFilenamespathToDependencyspider spiderHelperspiderLaunchergetDepsForFileghc-prim GHC.TypesIOrGetFilesInDirsingleFileGatherFuncdirectoryGathererFuncfileTreeGatherFunccommandGatherFuncfilePathDeterminerfilePathFilterdirectorySplitter fixFilePaths includeOption cTargetHashmassageFilePath remapObjFile remapBinFile excludeFiles changeExthandleExitCodecombineTransformscopyFunc remapFile buildFuncgetTimestampDBputTimestampDBtargetIsUpToDatepartitionMappings databaseFiledatabaseVersiongatherAllTargetsInternalgatherAllTargetsextractVarsFromArgsremoveVarsFromArgs parseArgsprintSeparatorrunBuild loadDatabase saveDatabasegetCurrentTargetNameputCurrentTargetNamegetTargetTimestampDB getChecksumDB putChecksumDBgetTargetChecksumDBputTargetChecksumDBgetUpToDateTargetsputUpToDateTargetsgetPendingDBUpdatesputPendingDBUpdatesgetMaxBuildJobs<||>shouldBuildMapping hasSrcChanged getTimestamphasChecksumChangedgetChecksumPair buildFoldFuncisLeft runTarget buildFailFuncrunTargetInternaltargetSuccessFunc stageFoldFuncworkerThreadFunc stageHelperrunStagetransferUpToDateTargetprocessMappingsupdateDatabaseupdateDatabaseHelperupdateDatabaseExtraDepswritePendingDBUpdates