cryptol-2.7.0: Cryptol: The Language of Cryptography

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

Cryptol.ModuleSystem.Interface

Description

 
Synopsis

Documentation

data Iface Source #

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

Constructors

Iface 

Fields

Instances
Show Iface Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Methods

showsPrec :: Int -> Iface -> ShowS #

show :: Iface -> String #

showList :: [Iface] -> ShowS #

Generic Iface Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Associated Types

type Rep Iface :: Type -> Type #

Methods

from :: Iface -> Rep Iface x #

to :: Rep Iface x -> Iface #

NFData Iface Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Methods

rnf :: Iface -> () #

type Rep Iface Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

data IfaceDecls Source #

Instances
Show IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Generic IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Associated Types

type Rep IfaceDecls :: Type -> Type #

Semigroup IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Monoid IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

NFData IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Methods

rnf :: IfaceDecls -> () #

type Rep IfaceDecls Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

type Rep IfaceDecls = D1 (MetaData "IfaceDecls" "Cryptol.ModuleSystem.Interface" "cryptol-2.7.0-6VD9sMh08R1JPrYSq7DH8b" False) (C1 (MetaCons "IfaceDecls" PrefixI True) (S1 (MetaSel (Just "ifTySyns") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Map Name IfaceTySyn)) :*: (S1 (MetaSel (Just "ifNewtypes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Map Name IfaceNewtype)) :*: S1 (MetaSel (Just "ifDecls") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Map Name IfaceDecl)))))

data IfaceDecl Source #

Constructors

IfaceDecl 

Fields

Instances
Show IfaceDecl Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Generic IfaceDecl Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Associated Types

type Rep IfaceDecl :: Type -> Type #

NFData IfaceDecl Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Methods

rnf :: IfaceDecl -> () #

type Rep IfaceDecl Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

data IfaceParams Source #

Constructors

IfaceParams 

Fields

Instances
Show IfaceParams Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Generic IfaceParams Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Associated Types

type Rep IfaceParams :: Type -> Type #

NFData IfaceParams Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

Methods

rnf :: IfaceParams -> () #

type Rep IfaceParams Source # 
Instance details

Defined in Cryptol.ModuleSystem.Interface

type Rep IfaceParams = D1 (MetaData "IfaceParams" "Cryptol.ModuleSystem.Interface" "cryptol-2.7.0-6VD9sMh08R1JPrYSq7DH8b" False) (C1 (MetaCons "IfaceParams" PrefixI True) (S1 (MetaSel (Just "ifParamTypes") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Map Name ModTParam)) :*: (S1 (MetaSel (Just "ifParamConstraints") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Located Prop]) :*: S1 (MetaSel (Just "ifParamFuns") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Map Name ModVParam)))))

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.