[Haskell-cafe] Extracting exposed modules from an installed library
Ivan Lazar Miljenovic
ivan.miljenovic at gmail.com
Thu Mar 21 10:09:48 CET 2013
On 21 March 2013 19:52, Corentin Dupont <corentin.dupont at gmail.com> wrote:
> Hi Joachim,
> that's right thanks, but I was looking for a way to do that from a program.
> ghc-pkg does not seems to expose any library...
http://hackage.haskell.org/packages/archive/Cabal/1.16.0.3/doc/html/Distribution-InstalledPackageInfo.html#t:InstalledPackageInfo_
?
>
> On Wed, Mar 20, 2013 at 11:23 PM, Joachim Breitner
> <mail at joachim-breitner.de> wrote:
>>
>> Hi,
>>
>> Am Mittwoch, den 20.03.2013, 00:34 +0100 schrieb Corentin Dupont:
>> > Hi Cafe!
>> > I'm looking for how to extract the exposed modules (as a list of
>> > strings) from an installed library, giving the library name.
>> > I can see some structures in Cabal (InstalledPackageInfo) and some
>> > functions in ghc-pkg.hs in GHC, but nothing readily useable...
>>
>> $ ghc-pkg field base exposed-modules
>> exposed-modules: Foreign.Concurrent GHC.Arr GHC.Base GHC.Char
>> GHC.Conc GHC.Conc.IO GHC.Conc.Signal GHC.Conc.Sync
>> GHC.ConsoleHandler GHC.Constants GHC.Desugar GHC.Enum
>> GHC.Environment GHC.Err GHC.Exception GHC.Exts
>> GHC.Fingerprint
>> GHC.Fingerprint.Type GHC.Float GHC.Float.ConversionUtils
>> GHC.Float.RealFracMethods GHC.Foreign GHC.ForeignPtr
>> GHC.Generics
>> GHC.GHCi GHC.Handle GHC.IO GHC.IO.Buffer
>> GHC.IO.BufferedIO
>> GHC.IO.Device GHC.IO.Encoding GHC.IO.Encoding.CodePage
>> GHC.IO.Encoding.Failure GHC.IO.Encoding.Iconv
>> GHC.IO.Encoding.Latin1 GHC.IO.Encoding.Types
>> GHC.IO.Encoding.UTF16
>> GHC.IO.Encoding.UTF32 GHC.IO.Encoding.UTF8
>> GHC.IO.Exception
>> GHC.IO.FD GHC.IO.Handle GHC.IO.Handle.FD
>> GHC.IO.Handle.Internals
>> GHC.IO.Handle.Text GHC.IO.Handle.Types GHC.IO.IOMode
>> GHC.IOArray
>> GHC.IOBase GHC.IORef GHC.IP GHC.Int GHC.List GHC.MVar
>> GHC.Num
>> GHC.PArr GHC.Pack GHC.Ptr GHC.Read GHC.Real GHC.ST
>> GHC.Stack
>> GHC.Stats GHC.Show GHC.Stable GHC.Storable GHC.STRef
>> GHC.TypeLits
>> GHC.TopHandler GHC.Unicode GHC.Weak GHC.Word
>> System.Timeout
>> GHC.Event Control.Applicative Control.Arrow
>> Control.Category
>> Control.Concurrent Control.Concurrent.Chan
>> Control.Concurrent.MVar
>> Control.Concurrent.QSem Control.Concurrent.QSemN
>> Control.Concurrent.SampleVar Control.Exception
>> Control.Exception.Base Control.Monad Control.Monad.Fix
>> Control.Monad.Instances Control.Monad.ST
>> Control.Monad.ST.Safe
>> Control.Monad.ST.Unsafe Control.Monad.ST.Lazy
>> Control.Monad.ST.Lazy.Safe Control.Monad.ST.Lazy.Unsafe
>> Control.Monad.ST.Strict Control.Monad.Zip Data.Bits
>> Data.Bool
>> Data.Char Data.Complex Data.Dynamic Data.Either Data.Eq
>> Data.Data
>> Data.Fixed Data.Foldable Data.Function Data.Functor
>> Data.HashTable
>> Data.IORef Data.Int Data.Ix Data.List Data.Maybe
>> Data.Monoid
>> Data.Ord Data.Ratio Data.STRef Data.STRef.Lazy
>> Data.STRef.Strict
>> Data.String Data.Traversable Data.Tuple Data.Typeable
>> Data.Typeable.Internal Data.Unique Data.Version Data.Word
>> Debug.Trace Foreign Foreign.C Foreign.C.Error
>> Foreign.C.String
>> Foreign.C.Types Foreign.ForeignPtr
>> Foreign.ForeignPtr.Safe
>> Foreign.ForeignPtr.Unsafe Foreign.Marshal
>> Foreign.Marshal.Alloc
>> Foreign.Marshal.Array Foreign.Marshal.Error
>> Foreign.Marshal.Pool
>> Foreign.Marshal.Safe Foreign.Marshal.Utils
>> Foreign.Marshal.Unsafe
>> Foreign.Ptr Foreign.Safe Foreign.StablePtr
>> Foreign.Storable Numeric
>> Prelude System.Console.GetOpt System.CPUTime
>> System.Environment
>> System.Exit System.IO System.IO.Error System.IO.Unsafe
>> System.Info
>> System.Mem System.Mem.StableName System.Mem.Weak
>> System.Posix.Internals System.Posix.Types
>> Text.ParserCombinators.ReadP
>> Text.ParserCombinators.ReadPrec
>> Text.Printf Text.Read Text.Read.Lex Text.Show
>> Text.Show.Functions
>> Unsafe.Coerce
>>
>>
>> Greetings,
>> Joachim
>>
>> --
>> Joachim "nomeata" Breitner
>> Debian Developer
>> nomeata at debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
>> JID: nomeata at joachim-breitner.de | http://people.debian.org/~nomeata
>>
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
Ivan Lazar Miljenovic
Ivan.Miljenovic at gmail.com
http://IvanMiljenovic.wordpress.com
More information about the Haskell-Cafe
mailing list