cabal-version: >= 1.18 build-type: Simple name: safe version: 0.3.10 license: BSD3 license-file: LICENSE category: Unclassified author: Neil Mitchell maintainer: Neil Mitchell copyright: Neil Mitchell 2007-2016 homepage: https://github.com/ndmitchell/safe#readme synopsis: Library of safe (exception free) functions bug-reports: https://github.com/ndmitchell/safe/issues tested-with: GHC==8.0.1, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2 description: A library wrapping @Prelude@/@Data.List@ functions that can throw exceptions, such as @head@ and @!!@. Each unsafe function has up to four variants, e.g. with @tail@: . * @tail :: [a] -> [a]@, raises an error on @tail []@. . * @tailMay :: [a] -> /Maybe/ [a]@, turns errors into @Nothing@. . * @tailDef :: /[a]/ -> [a] -> [a]@, takes a default to return on errors. . * @tailNote :: /String/ -> [a] -> [a]@, takes an extra argument which supplements the error message. . * @tailSafe :: [a] -> [a]@, returns some sensible default if possible, @[]@ in the case of @tail@. . This package is divided into three modules: . * "Safe" contains safe variants of @Prelude@ and @Data.List@ functions. . * "Safe.Foldable" contains safe variants of @Foldable@ functions. . * "Safe.Exact" creates crashing versions of functions like @zip@ (errors if the lists are not equal) and @take@ (errors if there are not enough elements), then wraps them to provide safe variants. extra-doc-files: CHANGES.txt README.md source-repository head type: git location: https://github.com/ndmitchell/safe.git library default-language: Haskell2010 build-depends: base < 5 exposed-modules: Safe Safe.Exact Safe.Foldable other-modules: Safe.Util