cryptol-2.10.0: Cryptol: The Language of Cryptography
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cryptol.IR.FreeVars

Synopsis

Documentation

class FreeVars e where Source #

Methods

freeVars :: e -> Deps Source #

Instances

Instances details
FreeVars TCon Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: TCon -> Deps Source #

FreeVars Newtype Source # 
Instance details

Defined in Cryptol.IR.FreeVars

FreeVars TVar Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: TVar -> Deps Source #

FreeVars Type Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: Type -> Deps Source #

FreeVars Schema Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: Schema -> Deps Source #

FreeVars DeclDef Source # 
Instance details

Defined in Cryptol.IR.FreeVars

FreeVars Decl Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: Decl -> Deps Source #

FreeVars DeclGroup Source # 
Instance details

Defined in Cryptol.IR.FreeVars

FreeVars Match Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: Match -> Deps Source #

FreeVars Expr Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: Expr -> Deps Source #

FreeVars e => FreeVars [e] Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

freeVars :: [e] -> Deps Source #

data Deps Source #

Constructors

Deps 

Fields

Instances

Instances details
Eq Deps Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

(==) :: Deps -> Deps -> Bool #

(/=) :: Deps -> Deps -> Bool #

Semigroup Deps Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

(<>) :: Deps -> Deps -> Deps #

sconcat :: NonEmpty Deps -> Deps #

stimes :: Integral b => b -> Deps -> Deps #

Monoid Deps Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

mempty :: Deps #

mappend :: Deps -> Deps -> Deps #

mconcat :: [Deps] -> Deps #

class Defs d where Source #

Methods

defs :: d -> Set Name Source #

Instances

Instances details
Defs Decl Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

defs :: Decl -> Set Name Source #

Defs DeclGroup Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

defs :: DeclGroup -> Set Name Source #

Defs Match Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

defs :: Match -> Set Name Source #

Defs a => Defs [a] Source # 
Instance details

Defined in Cryptol.IR.FreeVars

Methods

defs :: [a] -> Set Name Source #

moduleDeps :: Module -> Map Name Deps Source #

Dependencies of top-level declarations in a module. These are dependencies on module parameters or things defined outside the module.

transDeps :: Map Name Deps -> Map Name Deps Source #

Compute the transitive closure of the given dependencies.