packages feed

recover-rtti-0.4.3: recover-rtti.cabal

cabal-version:      2.4
name:               recover-rtti
version:            0.4.3
synopsis:           Recover run-time type information from the GHC heap
description:        The main function in this package is 'classify', which looks
                    at the GHC heap to recover type information about arbitrary
                    values. This makes it possible for example to show any value
                    (function 'anythingToString') without having any @Show@
                    instance in scope, though there are other use cases as well.
                    For example, you could use it to define an 'anythingToJSON'
                    function.
bug-reports:        https://github.com/well-typed/recover-rtti/issues
license:            BSD-3-Clause
license-file:       LICENSE
author:             Edsko de Vries
maintainer:         edsko@well-typed.com
copyright:          Juspay Technologies Pvt Ltd, Well-Typed LLP
category:           Debugging
extra-source-files:
    README.md
    CHANGELOG.md

Tested-With: GHC ==8.8.4
              || ==8.10.7
              || ==9.0.2
              || ==9.2.7
              || ==9.4.5
              || ==9.6.2

source-repository head
  type:     git
  location: https://github.com/well-typed/recover-rtti

library
    exposed-modules:  Debug.RecoverRTTI
                      Debug.RecoverRTTI.Classify
                      Debug.RecoverRTTI.ClosureTree

    other-modules:    Debug.RecoverRTTI.CheckSame
                      Debug.RecoverRTTI.Classifier
                      Debug.RecoverRTTI.Constraint
                      Debug.RecoverRTTI.Debugging
                      Debug.RecoverRTTI.FlatClosure
                      Debug.RecoverRTTI.Modules
                      Debug.RecoverRTTI.Nat
                      Debug.RecoverRTTI.Reclassify
                      Debug.RecoverRTTI.Tuple
                      Debug.RecoverRTTI.Tuple.Recursive
                      Debug.RecoverRTTI.Tuple.Size
                      Debug.RecoverRTTI.Util
                      Debug.RecoverRTTI.Wrappers

    build-depends:    base       >= 4.13 && < 4.19
                    , aeson      >= 1.4  && < 2.2
                    , bytestring >= 0.10 && < 0.12
                    , containers >= 0.6  && < 0.7
                    , ghc-heap   >= 8.8  && < 9.7
                    , ghc-prim   >= 0.5  && < 0.11
                    , sop-core   >= 0.5  && < 0.6
                    , stm        >= 2.5  && < 2.6
                    , text       >= 1.2  && < 2.1

                      -- mtl 2.3 does not have ExceptT?
                    , mtl (>= 2.2 && < 2.3) || (>= 2.3.1 && < 2.4)

                      -- 0.2.12 introduces Data.HashMap.Internal.Array
                    , unordered-containers >= 0.2.12 && < 0.3

                      -- The oldest ghc we support is 8.8.
                      -- The dependencies below are the oldest versions of
                      -- these packages that compile with this ghc version.
                    , vector    >= 0.12.1.2 && < 0.14
                    , primitive >= 0.7      && < 0.9

    hs-source-dirs:   src
    default-language: Haskell2010
    ghc-options:      -Wall
                      -Wredundant-constraints

test-suite test-recover-rtti
    default-language: Haskell2010
    type:             exitcode-stdio-1.0
    hs-source-dirs:   tests
    main-is:          RecoverRttiTests.hs
    other-modules:    Test.RecoverRTTI.Classifier.Arbitrary
                      Test.RecoverRTTI.Classifier.Equality
                      Test.RecoverRTTI.Classifier.Size
                      Test.RecoverRTTI.Classify
                      Test.RecoverRTTI.ConcreteClassifier
                      Test.RecoverRTTI.Globals
                      Test.RecoverRTTI.Prim
                      Test.RecoverRTTI.QuickCheck.DepGen
                      Test.RecoverRTTI.QuickCheck.Sized
                      Test.RecoverRTTI.Sanity
                      Test.RecoverRTTI.Show
                      Test.RecoverRTTI.Staged
                      Test.RecoverRTTI.UserDefined
    build-depends:    base >= 4.13
                    , recover-rtti

                    , aeson
                    , bytestring
                    , containers
                    , ghc-heap
                    , ghc-prim
                    , mtl
                    , primitive
                    , QuickCheck
                    , sop-core
                    , stm
                    , tasty
                    , tasty-hunit
                    , tasty-quickcheck
                    , text
                    , unordered-containers
                    , vector
    ghc-options:      -Wall