packages feed

ron-0.1: ron.cabal

cabal-version:  2.2

name:           ron
version:        0.1

category:       Distributed Systems, Protocol, Database
copyright:      2018 Yuriy Syrovetskiy
description:    Replicated Object Notation (RON), data types (RDT),
                and RON-Schema
license:        BSD-3-Clause
maintainer:     Yuriy Syrovetskiy <haskell@cblp.su>
synopsis:       RON, RON-RDT, and RON-Schema

build-type:     Simple

common language
    build-depends:
        base >= 4.11.1.0 && < 4.12,
    default-extensions: StrictData
    default-language:   Haskell2010

library
    import: language
    build-depends:
        aeson,
        attoparsec,
        binary,
        bytestring,
        containers,
        data-default,
        deepseq,
        Diff,
        errors,
        extra,
        hashable,
        mtl,
        safe,
        stringsearch,
        template-haskell,
        text,
        time,
        unordered-containers,
        vector,
    exposed-modules:
        RON.Base64
        RON.Binary
        RON.Binary.Parse
        RON.Binary.Serialize
        RON.Binary.Types
        RON.Data
        RON.Data.Internal
        RON.Data.LWW
        RON.Data.ORSet
        RON.Data.RGA
        RON.Data.Time
        RON.Data.VersionVector
        RON.Epoch
        RON.Event
        RON.Event.Simulation
        RON.Internal.Prelude
        RON.Internal.Word
        RON.Schema
        RON.Schema.TH
        RON.Text
        RON.Text.Parse
        RON.Text.Serialize
        RON.Text.Serialize.UUID
        RON.Types
        RON.UUID
    other-modules:
        Attoparsec.Extra
        Data.ZigZag
    hs-source-dirs: lib

benchmark bench
    import: language
    build-depends:
        -- global
        criterion,
        deepseq,
        -- package
        ron,
    main-is: Main.hs
    hs-source-dirs: bench
    type: exitcode-stdio-1.0