| License | GPL-2 |
|---|---|
| Maintainer | yi-devel@googlegroups.com |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | None |
| Language | Haskell2010 |
| Extensions |
|
Yi.Eval
- execEditorAction :: String -> YiM ()
- getAllNamesInScope :: YiM [String]
- describeNamedAction :: String -> YiM String
- data Evaluator = Evaluator {
- execEditorActionImpl :: String -> YiM ()
- getAllNamesInScopeImpl :: YiM [String]
- describeNamedActionImpl :: String -> YiM String
- evaluator :: Field Evaluator
- ghciEvaluator :: Evaluator
- publishedActionsEvaluator :: Evaluator
- publishedActions :: Field (HashMap String Action)
- publishAction :: (YiAction a x, Show x) => String -> a -> ConfigM ()
- jumpToErrorE :: YiM ()
- jumpToE :: FilePath -> Int -> Int -> YiM ()
- consoleKeymap :: Keymap
Main (generic) evaluation interface
execEditorAction :: String -> YiM () Source
Runs the action, as written by the user.
The behaviour of this function can be customised by modifying the
Evaluator variable.
getAllNamesInScope :: YiM [String] Source
Lists the action names in scope, for use by execEditorAction,
and help index.
The behaviour of this function can be customised by modifying the
Evaluator variable.
describeNamedAction :: String -> YiM String Source
Describes the named action in scope, for use by help.
The behaviour of this function can be customised by modifying the
Evaluator variable.
Config variable for customising the behaviour of
execEditorAction and getAllNamesInScope.
Set this variable using evaluator. See ghciEvaluator and
finiteListEvaluator for two implementation.
Constructors
| Evaluator | |
Fields
| |
evaluator :: Field Evaluator Source
The evaluator to use for execEditorAction and
getAllNamesInScope.
Standard evaluators
publishedActionsEvaluator :: Evaluator Source
Evaluator based on a fixed list of published actions. Has a few
differences from ghciEvaluator:
- expressions can't be evaluated
- all suggested actions are actually valued
- (related to the above) doesn't contain junk actions from Prelude
- doesn't require GHCi backend, so uses less memory
publishedActions :: Field (HashMap String Action) Source
Accessor for the published actions. Consider using
publishAction.
publishAction :: (YiAction a x, Show x) => String -> a -> ConfigM () Source
Publish the given action, by the given name. This will overwrite any existing actions by the same name.
Eval/Interpretation
jumpToErrorE :: YiM () Source
Tries to jump to error at the current line. See
parseErrorMessageB.