----------------------------------------------------------------------------- -- -- Module : Commands -- Copyright : (c) Phil Freeman 2014 -- License : MIT -- -- Maintainer : Phil Freeman -- Stability : experimental -- Portability : -- -- | -- Commands for PSCI. -- ----------------------------------------------------------------------------- module Commands where import Language.PureScript -- | -- Valid Meta-commands for PSCI -- data Command -- | -- A purescript expression -- = Expression Expr -- | -- Show the help command -- | Help -- | -- Import a module from a loaded file -- | Import ImportedModule -- | -- Browse a module -- | Browse ModuleName -- | -- Load a file for use with importing -- | LoadFile FilePath -- | -- Exit PSCI -- | Quit -- | -- Reset the state of the REPL -- | Reset -- | -- Add some declarations to the current evaluation context. -- | Decls [Declaration] -- | -- Find the type of an expression -- | TypeOf Expr -- | -- Find the kind of an expression -- | KindOf Type -- | -- Show command -- | Show String -- | All of the data that is contained by an ImportDeclaration in the AST. -- That is: -- -- * A module name, the name of the module which is being imported -- * An ImportDeclarationType which specifies whether there is an explicit -- import list, a hiding list, or neither. -- * If the module is imported qualified, its qualified name in the importing -- module. Otherwise, Nothing. -- type ImportedModule = (ModuleName, ImportDeclarationType, Maybe ModuleName)