cryptol-2.13.0: Cryptol: The Language of Cryptography
Copyright(c) 2013-2016 Galois Inc.
LicenseBSD3
Maintainercryptol@galois.com
Stabilityprovisional
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Cryptol.REPL.Command

Contents

Description

 
Synopsis

Commands

data Command Source #

Commands.

Constructors

Command (Int -> Maybe FilePath -> REPL ())

Successfully parsed command

Ambiguous String [String]

Ambiguous command, list of conflicting commands

Unknown String

The unknown command

data CommandBody Source #

Constructors

ExprArg (String -> (Int, Int) -> Maybe FilePath -> REPL ()) 
FileExprArg (FilePath -> String -> (Int, Int) -> Maybe FilePath -> REPL ()) 
DeclsArg (String -> REPL ()) 
ExprTypeArg (String -> REPL ()) 
ModNameArg (String -> REPL ()) 
FilenameArg (FilePath -> REPL ()) 
OptionArg (String -> REPL ()) 
ShellArg (String -> REPL ()) 
HelpArg (String -> REPL ()) 
NoArg (REPL ()) 

parseCommand :: (String -> [CommandDescr]) -> String -> Maybe Command Source #

Parse a line as a command.

splitCommand :: String -> Maybe (Int, String, String) Source #

Split at the first word boundary.

findCommand :: String -> [CommandDescr] Source #

Lookup a string in the command list.

findCommandExact :: String -> [CommandDescr] Source #

Lookup a string in the command list, returning an exact match even if it's the prefix of another command.

findNbCommand :: Bool -> String -> [CommandDescr] Source #

Lookup a string in the notebook-safe command list.

qcCmd :: QCMode -> String -> (Int, Int) -> Maybe FilePath -> REPL () Source #

Randomly test a property, or exhaustively check it if the number of values in the type under test is smaller than the tests environment variable, or we specify exhaustive testing.

data QCMode Source #

Constructors

QCRandom 
QCExhaust 

Instances

Instances details
Eq QCMode Source # 
Instance details

Defined in Cryptol.REPL.Command

Methods

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

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

Show QCMode Source # 
Instance details

Defined in Cryptol.REPL.Command

sanitize :: String -> String Source #

Strip leading space.

replParse :: (String -> Either ParseError a) -> String -> REPL a Source #

Lift a parsing action into the REPL monad.