cryptol-2.8.0: Cryptol: The Language of Cryptography

Safe Haskell | Safe
Language | Haskell2010

Cryptol.ModuleSystem.Exports

Synopsis

- modExports :: Ord name => Module name -> ExportSpec name
- data ExportSpec name = ExportSpec {
  - eTypes :: Set name
  - eBinds :: Set name
  }
- exportBind :: Ord name => TopLevel name -> ExportSpec name
- exportType :: Ord name => TopLevel name -> ExportSpec name
- isExportedBind :: Ord name => name -> ExportSpec name -> Bool
- isExportedType :: Ord name => name -> ExportSpec name -> Bool

# Documentation

modExports :: Ord name => Module name -> ExportSpec name Source #

data ExportSpec name Source #

Constructors

ExportSpec |

Fields

- eTypes :: Set name
- eBinds :: Set name

#### Instances

Instances details

Show name => Show (ExportSpec name) Source # |
Instance details Defined in Cryptol.ModuleSystem.Exports Methods showsPrec :: Int -> ExportSpec name -> ShowS Source # show :: ExportSpec name -> String Source # showList :: [ExportSpec name] -> ShowS Source #
Generic (ExportSpec name) Source # |
Instance details Defined in Cryptol.ModuleSystem.Exports Associated Types type Rep (ExportSpec name) :: Type -> Type Source # Methods from :: ExportSpec name -> Rep (ExportSpec name) x Source # to :: Rep (ExportSpec name) x -> ExportSpec name Source #
Ord name => Semigroup (ExportSpec name) Source # |
Instance details Defined in Cryptol.ModuleSystem.Exports Methods (<>) :: ExportSpec name -> ExportSpec name -> ExportSpec name Source # sconcat :: NonEmpty (ExportSpec name) -> ExportSpec name Source # stimes :: Integral b => b -> ExportSpec name -> ExportSpec name Source #
Ord name => Monoid (ExportSpec name) Source # |
Instance details Defined in Cryptol.ModuleSystem.Exports Methods mempty :: ExportSpec name Source # mappend :: ExportSpec name -> ExportSpec name -> ExportSpec name Source # mconcat :: [ExportSpec name] -> ExportSpec name Source #
NFData name => NFData (ExportSpec name) Source # |
Instance details Defined in Cryptol.ModuleSystem.Exports Methods rnf :: ExportSpec name -> () Source #
type Rep (ExportSpec name) Source # |

Instance details

Defined in Cryptol.ModuleSystem.Exports

type Rep (ExportSpec name) = D1 ('MetaData "ExportSpec" "Cryptol.ModuleSystem.Exports" "cryptol-2.8.0-11Z6ZaBuQbo1UTYpHYMeUg" 'False) (C1 ('MetaCons "ExportSpec" 'PrefixI 'True) (S1 ('MetaSel ('Just "eTypes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set name)) :*: S1 ('MetaSel ('Just "eBinds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Set name))))

exportBind :: Ord name => TopLevel name -> ExportSpec name Source #

Add a binding name to the export list, if it should be exported.

exportType :: Ord name => TopLevel name -> ExportSpec name Source #

Add a type synonym name to the export list, if it should be exported.

isExportedBind :: Ord name => name -> ExportSpec name -> Bool Source #

Check to see if a binding is exported.

isExportedType :: Ord name => name -> ExportSpec name -> Bool Source #

Check to see if a type synonym is exported.