cryptol-2.5.0: Cryptol: The Language of Cryptography

Copyright(c) 2013-2016 Galois Inc.
LicenseBSD3
Maintainercryptol@galois.com
Stabilityprovisional
Portabilityportable
Safe HaskellSafe
LanguageHaskell98

Cryptol.ModuleSystem.Interface

Description

 

Synopsis

Documentation

data Iface Source #

The resulting interface generated by a module that has been typechecked.

Constructors

Iface 

Instances

Show Iface Source # 

Methods

showsPrec :: Int -> Iface -> ShowS #

show :: Iface -> String #

showList :: [Iface] -> ShowS #

Generic Iface Source # 

Associated Types

type Rep Iface :: * -> * #

Methods

from :: Iface -> Rep Iface x #

to :: Rep Iface x -> Iface #

NFData Iface Source # 

Methods

rnf :: Iface -> () #

type Rep Iface Source # 
type Rep Iface = D1 (MetaData "Iface" "Cryptol.ModuleSystem.Interface" "cryptol-2.5.0-62ntwDPh16AFY461fF3rK" False) (C1 (MetaCons "Iface" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "ifModName") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 ModName)) ((:*:) (S1 (MetaSel (Just Symbol "ifPublic") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 IfaceDecls)) (S1 (MetaSel (Just Symbol "ifPrivate") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 IfaceDecls)))))

genIface :: Module -> Iface Source #

Generate an Iface from a typechecked module.

ifacePrimMap :: Iface -> PrimMap Source #

Produce a PrimMap from an interface.

NOTE: the map will expose both public and private names.