packages feed

rdf4h-1.3.2: rdf4h.cabal

name:            rdf4h
version:         1.3.2
synopsis:        A library for RDF processing in Haskell
description:     
  'RDF for Haskell' is a library for working with RDF in Haskell.
  At present it includes parsers and serializers for RDF in the N-Triples
  and Turtle, and parsing support for RDF/XML. It provides abilities such as querying
  for triples  containing a particular subject, predicate, or object, or
  selecting triples that satisfy an arbitrary predicate function.

author:          Calvin Smith, Rob Stewart, Slava Kravchenko
copyright:       (c) Calvin Smith, Rob Stewart, Slava Kravchenko
maintainer:      Rob Stewart <robstewart@gmail.com>, Slava Kravchenko
homepage:        https://github.com/robstewart57/rdf4h
bug-reports:     https://github.com/robstewart57/rdf4h/issues
license:         BSD3
license-file:    LICENSE.txt
cabal-version:   >= 1.8
build-type:      Simple
category:        RDF
stability:       Experimental
tested-with:     GHC==7.6.3, GHC==7.8.3
extra-tmp-files: test
extra-source-files: examples/ParseURLs.hs

flag small_base
  description: Choose the new smaller, split-up base package.
  default:     False

flag network-uri
   description: Get Network.URI from the network-uri package
   default: True

library
  exposed-modules: Data.RDF
                 , Data.RDF.Namespace
                 , Data.RDF.Types
                 , Data.RDF.Query
                 , Data.RDF.MGraph
                 , Data.RDF.PatriciaTreeGraph
                 , Data.RDF.TriplesGraph
                 , Text.RDF.RDF4H.TurtleParser
                 , Text.RDF.RDF4H.TurtleSerializer
                 , Text.RDF.RDF4H.NTriplesParser
                 , Text.RDF.RDF4H.NTriplesSerializer
                 , Text.RDF.RDF4H.XmlParser
  if flag(small_base)
    build-depends: base >= 3, bytestring, directory, containers
  else
    build-depends: base < 3
  build-depends:   parsec >= 3
                 , fgl
                 , HTTP >= 4000.0.0
                 , hxt >= 9.3.1.2
                 , text
                 , unordered-containers
                 , hashable
                 , deepseq
                 , binary
                 , text-binary
  if impl(ghc < 7.6)
    build-depends: ghc-prim

  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

  other-modules:   Text.RDF.RDF4H.ParserUtils
                 , Text.RDF.RDF4H.Interact
  hs-source-dirs:  src
  extensions:      BangPatterns RankNTypes MultiParamTypeClasses Arrows FlexibleContexts OverloadedStrings
  ghc-options:     -Wall -fno-warn-unused-do-bind -funbox-strict-fields -O2

executable rdf4h
  main-is:         Rdf4hParseMain.hs 
  if flag(small_base)
    build-depends: base >= 3, bytestring
  else
    build-depends: base >= 4 && < 6
  build-depends:   parsec >= 3
                 , HTTP >= 4000.0.0
                 , hxt >= 9.3.1.2
                 , containers
                 , text
                 , hashable
                 , deepseq
                 , binary
                 , text-binary

  if impl(ghc < 7.6)
    build-depends: ghc-prim

  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

  hs-source-dirs:  src
  extensions:      BangPatterns RankNTypes ScopedTypeVariables MultiParamTypeClasses OverloadedStrings
  ghc-options:     -Wall -fno-warn-unused-do-bind -funbox-strict-fields

test-suite test-rdf4h
  type:          exitcode-stdio-1.0
  main-is:       Test.hs
  ghc-options:   -Wall -fno-warn-unused-do-bind -fno-warn-orphans -fno-warn-name-shadowing -funbox-strict-fields
  extensions:    RankNTypes MultiParamTypeClasses Arrows FlexibleContexts OverloadedStrings
  build-depends: base >= 4 && < 6
               , parsec >= 3
               , test-framework >= 0.2.3
               , test-framework-quickcheck2
               , test-framework-hunit >= 0.2.7
               , HTTP >= 4000.0.0
               , QuickCheck >= 1.2.0.0
               , HUnit >= 1.2.2.1
               , bytestring
               , hxt >= 9.3.1.2
               , containers
               , text
               , knob
               , unordered-containers
               , hashable
               , fgl
               , deepseq
               , binary
               , text-binary

  if impl(ghc < 7.6)
    build-depends: ghc-prim

  if flag(network-uri)
    build-depends: network-uri >= 2.6, network >= 2.6
  else
    build-depends: network-uri < 2.6, network < 2.6

  other-modules: Data.RDF
               , Data.RDF.Namespace
               , Data.RDF.MGraph
               , Data.RDF.PatriciaTreeGraph
               , Data.RDF.TriplesGraph
               , Text.RDF.RDF4H.NTriplesParser
               , Text.RDF.RDF4H.NTriplesSerializer
               , Text.RDF.RDF4H.TurtleParser
               , Text.RDF.RDF4H.TurtleSerializer
               , Text.RDF.RDF4H.XmlParser
               , W3C.TurtleTest
  hs-source-dirs: src, testsuite/tests

benchmark rdf4h-bench
  type:             exitcode-stdio-1.0
  hs-source-dirs:   bench
  main-is:          MainCriterion.hs
  build-depends:    base,
                    criterion,
                    rdf4h,
                    text
  ghc-options:      -Wall
                    -O2

source-repository head
  type:     git
  location: https://github.com/robstewart57/rdf4h.git