This file is indexed.

/usr/share/doc/libghc-cryptol-doc/html/Cryptol-ModuleSystem-Base.html is in libghc-cryptol-doc 2.2.6-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

1
2
3
4
5
6
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Cryptol.ModuleSystem.Base</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Cryptol-ModuleSystem-Base.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Cryptol-ModuleSystem-Base.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">cryptol-2.2.6: Cryptol: The Language of Cryptography</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Copyright</th><td>(c) 2013-2015 Galois, Inc.</td></tr><tr><th>License</th><td>BSD3</td></tr><tr><th>Maintainer</th><td>cryptol@galois.com</td></tr><tr><th>Stability</th><td>provisional</td></tr><tr><th>Portability</th><td>portable</td></tr><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Cryptol.ModuleSystem.Base</p></div><div id="description"><p class="caption">Description</p><div class="doc empty">&nbsp;</div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:rename">rename</a> :: <a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> a =&gt; <a href="Cryptol-ModuleSystem-NamingEnv.html#t:NamingEnv">NamingEnv</a> -&gt; a -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> a</li><li class="src short"><a href="#v:renameModule">renameModule</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Module">Module</a></li><li class="src short"><a href="#v:renameExpr">renameExpr</a> :: <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a></li><li class="src short"><a href="#v:renameDecls">renameDecls</a> :: (<a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> d, <a href="Cryptol-TypeCheck-Depends.html#t:FromDecl">FromDecl</a> d) =&gt; [d] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> [d]</li><li class="src short"><a href="#v:noPat">noPat</a> :: <a href="Cryptol-Parser-NoPat.html#t:RemovePatterns">RemovePatterns</a> a =&gt; a -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> a</li><li class="src short"><a href="#v:parseModule">parseModule</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Module">Module</a></li><li class="src short"><a href="#v:loadModuleByPath">loadModuleByPath</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a></li><li class="src short"><a href="#v:loadImport">loadImport</a> :: <a href="Cryptol-Parser-Position.html#t:Located">Located</a> <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> ()</li><li class="src short"><a href="#v:loadModule">loadModule</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a></li><li class="src short"><a href="#v:fullyQualified">fullyQualified</a> :: <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Import">Import</a></li><li class="src short"><a href="#v:importIface">importIface</a> :: <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:Iface">Iface</a></li><li class="src short"><a href="#v:importIfaces">importIfaces</a> :: [<a href="Cryptol-Parser-AST.html#t:Import">Import</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a></li><li class="src short"><a href="#v:moduleFile">moduleFile</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-String.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:findModule">findModule</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:findFile">findFile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:preludeName">preludeName</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a></li><li class="src short"><a href="#v:addPrelude">addPrelude</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Module">Module</a></li><li class="src short"><a href="#v:loadDeps">loadDeps</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> ()</li><li class="src short"><a href="#v:checkExpr">checkExpr</a> :: <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> (<a href="Cryptol-TypeCheck-AST.html#t:Expr">Expr</a>, <a href="Cryptol-TypeCheck-AST.html#t:Schema">Schema</a>)</li><li class="src short"><a href="#v:checkDecls">checkDecls</a> :: (<a href="Cryptol-Parser-Position.html#t:HasLoc">HasLoc</a> d, <a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> d, <a href="Cryptol-TypeCheck-Depends.html#t:FromDecl">FromDecl</a> d) =&gt; [d] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> [<a href="Cryptol-TypeCheck-AST.html#t:DeclGroup">DeclGroup</a>]</li><li class="src short"><a href="#v:checkModule">checkModule</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:TCAction">TCAction</a> i o = i -&gt; <a href="Cryptol-TypeCheck-Monad.html#t:InferInput">InferInput</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:IO">IO</a> (<a href="Cryptol-TypeCheck-Monad.html#t:InferOutput">InferOutput</a> o)</li><li class="src short"><a href="#v:typecheck">typecheck</a> :: <a href="Cryptol-Parser-Position.html#t:HasLoc">HasLoc</a> i =&gt; <a href="Cryptol-ModuleSystem-Base.html#t:TCAction">TCAction</a> i o -&gt; i -&gt; <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> o</li><li class="src short"><a href="#v:importIfacesTc">importIfacesTc</a> :: [<a href="Cryptol-Parser-AST.html#t:Import">Import</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a></li><li class="src short"><a href="#v:genInferInput">genInferInput</a> :: <a href="Cryptol-Parser-Position.html#t:Range">Range</a> -&gt; <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-Monad.html#t:InferInput">InferInput</a></li><li class="src short"><a href="#v:evalExpr">evalExpr</a> :: <a href="Cryptol-TypeCheck-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Eval-Value.html#t:Value">Value</a></li><li class="src short"><a href="#v:evalDecls">evalDecls</a> :: [<a href="Cryptol-TypeCheck-AST.html#t:DeclGroup">DeclGroup</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:rename" class="def">rename</a> :: <a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> a =&gt; <a href="Cryptol-ModuleSystem-NamingEnv.html#t:NamingEnv">NamingEnv</a> -&gt; a -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> a <a href="src/Cryptol-ModuleSystem-Base.html#rename" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:renameModule" class="def">renameModule</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#renameModule" class="link">Source</a></p><div class="doc"><p>Rename a module in the context of its imported modules.</p></div></div><div class="top"><p class="src"><a name="v:renameExpr" class="def">renameExpr</a> :: <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a> <a href="src/Cryptol-ModuleSystem-Base.html#renameExpr" class="link">Source</a></p><div class="doc"><p>Rename an expression in the context of the focused module.</p></div></div><div class="top"><p class="src"><a name="v:renameDecls" class="def">renameDecls</a> :: (<a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> d, <a href="Cryptol-TypeCheck-Depends.html#t:FromDecl">FromDecl</a> d) =&gt; [d] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> [d] <a href="src/Cryptol-ModuleSystem-Base.html#renameDecls" class="link">Source</a></p><div class="doc"><p>Rename declarations in the context of the focused module.</p></div></div><div class="top"><p class="src"><a name="v:noPat" class="def">noPat</a> :: <a href="Cryptol-Parser-NoPat.html#t:RemovePatterns">RemovePatterns</a> a =&gt; a -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> a <a href="src/Cryptol-ModuleSystem-Base.html#noPat" class="link">Source</a></p><div class="doc"><p>Run the noPat pass.</p></div></div><div class="top"><p class="src"><a name="v:parseModule" class="def">parseModule</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Parser-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#parseModule" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:loadModuleByPath" class="def">loadModuleByPath</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#loadModuleByPath" class="link">Source</a></p><div class="doc"><p>Load a module by its path.</p></div></div><div class="top"><p class="src"><a name="v:loadImport" class="def">loadImport</a> :: <a href="Cryptol-Parser-Position.html#t:Located">Located</a> <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> () <a href="src/Cryptol-ModuleSystem-Base.html#loadImport" class="link">Source</a></p><div class="doc"><p>Load the module specified by an import.</p></div></div><div class="top"><p class="src"><a name="v:loadModule" class="def">loadModule</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#loadModule" class="link">Source</a></p><div class="doc"><p>Load dependencies, typecheck, and add to the eval environment.</p></div></div><div class="top"><p class="src"><a name="v:fullyQualified" class="def">fullyQualified</a> :: <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Import">Import</a> <a href="src/Cryptol-ModuleSystem-Base.html#fullyQualified" class="link">Source</a></p><div class="doc"><p>Rewrite an import declaration to be of the form:</p><pre>import foo as foo [ [hiding] (a,b,c) ]</pre></div></div><div class="top"><p class="src"><a name="v:importIface" class="def">importIface</a> :: <a href="Cryptol-Parser-AST.html#t:Import">Import</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:Iface">Iface</a> <a href="src/Cryptol-ModuleSystem-Base.html#importIface" class="link">Source</a></p><div class="doc"><p>Process the interface specified by an import.</p></div></div><div class="top"><p class="src"><a name="v:importIfaces" class="def">importIfaces</a> :: [<a href="Cryptol-Parser-AST.html#t:Import">Import</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> <a href="src/Cryptol-ModuleSystem-Base.html#importIfaces" class="link">Source</a></p><div class="doc"><p>Load a series of interfaces, merging their public interfaces.</p></div></div><div class="top"><p class="src"><a name="v:moduleFile" class="def">moduleFile</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/Data-String.html#t:String">String</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> <a href="src/Cryptol-ModuleSystem-Base.html#moduleFile" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:findModule" class="def">findModule</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> <a href="src/Cryptol-ModuleSystem-Base.html#findModule" class="link">Source</a></p><div class="doc"><p>Discover a module.</p></div></div><div class="top"><p class="src"><a name="v:findFile" class="def">findFile</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:FilePath">FilePath</a> <a href="src/Cryptol-ModuleSystem-Base.html#findFile" class="link">Source</a></p><div class="doc"><p>Discover a file. This is distinct from <code><a href="Cryptol-ModuleSystem-Base.html#v:findModule">findModule</a></code> in that we
 assume we've already been given a particular file name.</p></div></div><div class="top"><p class="src"><a name="v:preludeName" class="def">preludeName</a> :: <a href="Cryptol-Parser-AST.html#t:ModName">ModName</a> <a href="src/Cryptol-ModuleSystem-Base.html#preludeName" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:addPrelude" class="def">addPrelude</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-Parser-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#addPrelude" class="link">Source</a></p><div class="doc"><p>Add the prelude to the import list if it's not already mentioned.</p></div></div><div class="top"><p class="src"><a name="v:loadDeps" class="def">loadDeps</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> () <a href="src/Cryptol-ModuleSystem-Base.html#loadDeps" class="link">Source</a></p><div class="doc"><p>Load the dependencies of a module into the environment.</p></div></div><div class="top"><p class="src"><a name="v:checkExpr" class="def">checkExpr</a> :: <a href="Cryptol-Parser-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> (<a href="Cryptol-TypeCheck-AST.html#t:Expr">Expr</a>, <a href="Cryptol-TypeCheck-AST.html#t:Schema">Schema</a>) <a href="src/Cryptol-ModuleSystem-Base.html#checkExpr" class="link">Source</a></p><div class="doc"><p>Typecheck a single expression.</p></div></div><div class="top"><p class="src"><a name="v:checkDecls" class="def">checkDecls</a> :: (<a href="Cryptol-Parser-Position.html#t:HasLoc">HasLoc</a> d, <a href="Cryptol-ModuleSystem-Renamer.html#t:Rename">Rename</a> d, <a href="Cryptol-TypeCheck-Depends.html#t:FromDecl">FromDecl</a> d) =&gt; [d] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> [<a href="Cryptol-TypeCheck-AST.html#t:DeclGroup">DeclGroup</a>] <a href="src/Cryptol-ModuleSystem-Base.html#checkDecls" class="link">Source</a></p><div class="doc"><p>Typecheck a group of declarations.</p></div></div><div class="top"><p class="src"><a name="v:checkModule" class="def">checkModule</a> :: <a href="Cryptol-Parser-AST.html#t:Module">Module</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-AST.html#t:Module">Module</a> <a href="src/Cryptol-ModuleSystem-Base.html#checkModule" class="link">Source</a></p><div class="doc"><p>Typecheck a module.</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:TCAction" class="def">TCAction</a> i o = i -&gt; <a href="Cryptol-TypeCheck-Monad.html#t:InferInput">InferInput</a> -&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.8.2.0/System-IO.html#t:IO">IO</a> (<a href="Cryptol-TypeCheck-Monad.html#t:InferOutput">InferOutput</a> o) <a href="src/Cryptol-ModuleSystem-Base.html#TCAction" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:typecheck" class="def">typecheck</a> :: <a href="Cryptol-Parser-Position.html#t:HasLoc">HasLoc</a> i =&gt; <a href="Cryptol-ModuleSystem-Base.html#t:TCAction">TCAction</a> i o -&gt; i -&gt; <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> o <a href="src/Cryptol-ModuleSystem-Base.html#typecheck" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:importIfacesTc" class="def">importIfacesTc</a> :: [<a href="Cryptol-Parser-AST.html#t:Import">Import</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> <a href="src/Cryptol-ModuleSystem-Base.html#importIfacesTc" class="link">Source</a></p><div class="doc"><p>Process a list of imports, producing an aggregate interface suitable for use
 when typechecking.</p></div></div><div class="top"><p class="src"><a name="v:genInferInput" class="def">genInferInput</a> :: <a href="Cryptol-Parser-Position.html#t:Range">Range</a> -&gt; <a href="Cryptol-ModuleSystem-Interface.html#t:IfaceDecls">IfaceDecls</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-TypeCheck-Monad.html#t:InferInput">InferInput</a> <a href="src/Cryptol-ModuleSystem-Base.html#genInferInput" class="link">Source</a></p><div class="doc"><p>Generate input for the typechecker.</p></div></div><div class="top"><p class="src"><a name="v:evalExpr" class="def">evalExpr</a> :: <a href="Cryptol-TypeCheck-AST.html#t:Expr">Expr</a> -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> <a href="Cryptol-Eval-Value.html#t:Value">Value</a> <a href="src/Cryptol-ModuleSystem-Base.html#evalExpr" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:evalDecls" class="def">evalDecls</a> :: [<a href="Cryptol-TypeCheck-AST.html#t:DeclGroup">DeclGroup</a>] -&gt; <a href="Cryptol-ModuleSystem-Monad.html#t:ModuleM">ModuleM</a> () <a href="src/Cryptol-ModuleSystem-Base.html#evalDecls" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.16.1</p></div></body></html>