packages feed

haskell-token-utils-0.0.0.1: haskell-token-utils.cabal

name:                haskell-token-utils
version:             0.0.0.1
synopsis:            Utilities to tie up tokens to an AST
description:         This library is currently experimental.
                     .
                     The GHC part is solid, since it has been migrated from HaRe.
                     .
                     The haskell-src-exts one is still in progress
                     .
                     This package provides a set of data structures to
                     manage the tie-up between a Haskell AST and the
                     underlying tokens, such that it explicitly
                     captures the Haskell layout rules and original
                     formatting. As a result changes can be made to
                     the AST and the tokens will be updated so that
                     the source file can be recreated with only the
                     updated parts changed. This makes it easier to
                     write Haskell source code modification
                     programmes.
homepage:            https://github.com/alanz/haskell-token-utils
bug-reports:         https://github.com/alanz/haskell-token-utils/issues
license:             PublicDomain
license-file:        LICENSE
author:              Alan Zimmerman
maintainer:          alan.zimm@gmail.com
-- copyright:           
category:            Development
build-type:          Simple
extra-source-files:  README.md
cabal-version:       >=1.10

library
  exposed-modules:     Language.Haskell.TokenUtils.API
                     , Language.Haskell.TokenUtils.DualTree
                     , Language.Haskell.TokenUtils.Layout
                     , Language.Haskell.TokenUtils.Pretty
                     , Language.Haskell.TokenUtils.TokenUtils
                     , Language.Haskell.TokenUtils.Types
                     , Language.Haskell.TokenUtils.Utils
                     -- to be moved into its own library when published
                     , Language.Haskell.TokenUtils.GHC.Layout
                     , Language.Haskell.TokenUtils.HSE.Layout
  -- other-modules:       
  -- other-extensions:    
  build-depends:       base >=4.6 && <4.7
                     , containers
                     , dual-tree
                     , semigroups
                     , monoid-extras
                     , mtl
                     , pretty
                     , rosezipper

                     -- for GHC, until split out
                     , ghc
                     , ghc-syb-utils
                     , syb

                     -- for HSE, until split out
                     , haskell-src-exts
  hs-source-dirs:      src
                     , src-ghc
                     , src-hse
  default-language:    Haskell2010


test-suite spec
  type:
      exitcode-stdio-1.0
  ghc-options:
  main-is:
      Spec.hs
  Hs-Source-Dirs:
    src, test, src-ghc, src-hse
  default-language:    Haskell2010
  build-depends:
      base        >= 4.0  && < 4.7
    , Diff >= 0.3.0
    , HUnit
    , QuickCheck  >= 2.5
    , containers
    , directory
    , hspec
    , rosezipper

    , dual-tree
    , semigroups
    , monoid-extras
    , mtl
    , pretty
    -- experimentation
    , kure
    , syb

    -- For testing the GHC version
    , ghc
    , ghc-paths
    , ghc-prim
    , ghc-syb-utils
    , ghc-mod >= 4.1.0

    -- For testing the haskell-src-exts one
    , haskell-src-exts >= 1.15

source-repository head
  type:     git
  location: https://github.com/alanz/haskell-token-utils.git