From d6252d1c16d59ad26db0d08a531cddf39864d9db Mon Sep 17 00:00:00 2001 From: hallgren Date: Thu, 12 Jun 2014 14:43:18 +0000 Subject: PGF library: expose only PGF and PGF.Internal instead of all modules PGF exports the public, stable API. PGF.Internal exports additional things needed in the GF compiler & shell, including the nonstardard version of Data.Binary. --- src/runtime/haskell/PGF/Internal.hs | 18 ++++++++++++++++++ src/runtime/haskell/PGF/Utilities.hs | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 src/runtime/haskell/PGF/Internal.hs (limited to 'src/runtime/haskell') diff --git a/src/runtime/haskell/PGF/Internal.hs b/src/runtime/haskell/PGF/Internal.hs new file mode 100644 index 000000000..f2c79596c --- /dev/null +++ b/src/runtime/haskell/PGF/Internal.hs @@ -0,0 +1,18 @@ +{-# OPTIONS_HADDOCK hide #-} +------------------------------------------------- +-- | +-- Stability : unstable +-- +------------------------------------------------- +module PGF.Internal(module Internal) where +import PGF.Binary as Internal +import PGF.Data as Internal +import PGF.Macros as Internal +import PGF.Optimize as Internal +import PGF.Printer as Internal +import PGF.Utilities as Internal + +import Data.Binary as Internal +import Data.Binary.Get as Internal +import Data.Binary.IEEE754 as Internal +import Data.Binary.Put as Internal diff --git a/src/runtime/haskell/PGF/Utilities.hs b/src/runtime/haskell/PGF/Utilities.hs index 5af5b9b5d..ab1b4e2fe 100644 --- a/src/runtime/haskell/PGF/Utilities.hs +++ b/src/runtime/haskell/PGF/Utilities.hs @@ -3,10 +3,10 @@ module PGF.Utilities where import Data.Set(empty,member,insert) --- | Like 'nub', but O(n log n) instead of O(n^2), since it uses a set to lookup previous things. +-- | Like 'Data.List.nub', but O(n log n) instead of O(n^2), since it uses a set to lookup previous things. -- The result list is stable (the elements are returned in the order they occur), and lazy. -- Requires that the list elements can be compared by Ord. --- Code ruthlessly taken from http://hpaste.org/54411 +-- Code ruthlessly taken from nub' :: Ord a => [a] -> [a] nub' = loop empty where loop _ [] = [] -- cgit v1.2.3