| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | yi-devel@googlegroups.com |
| Safe Haskell | None |
Yi.Eval
- execEditorAction :: String -> YiM ()
- getAllNamesInScope :: YiM [String]
- data Evaluator = Evaluator {
- execEditorActionImpl :: String -> YiM ()
- getAllNamesInScopeImpl :: 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.
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
| |
Instances
| Typeable Evaluator | |
| Default Evaluator | |
| YiConfigVariable Evaluator |
evaluator :: Field EvaluatorSource
The evaluator to use for execEditorAction and
getAllNamesInScope.
Standard evaluators
publishedActionsEvaluator :: EvaluatorSource
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.
Arguments
| :: FilePath | Filename to make the jump in. |
| -> Int | Line to jump to. |
| -> Int | Column to jump to. |
| -> YiM () |
Jumps to specified position in a given file.