    {-# OPTIONS_HADDOCK show-extensions #-}

    -- |
    -- Module      :  Yi.Keymap.Vim.Eval
    -- License     :  GPL-2
    -- Maintainer  :  yi-devel@googlegroups.com
    -- Stability   :  experimental
    -- Portability :  portable
    --
    -- This module doesn't contains actual eval, see
    -- 'Yi.Keymap.Vim.pureEval' comment.

    module Yi.Keymap.Vim.Eval (scheduleActionStringForEval) where

    import Yi.Editor                (EditorM)
    import Yi.Keymap.Vim.Common     (EventString, VimState (vsStringToEval))
    import Yi.Keymap.Vim.StateUtils (modifyStateE)

    scheduleActionStringForEval :: EventString -> EditorM ()
    scheduleActionStringForEval :: EventString -> EditorM ()
    scheduleActionStringForEval EventString
    s = (VimState -> VimState) -> EditorM ()
    modifyStateE ((VimState -> VimState) -> EditorM ())
    -> (VimState -> VimState) -> EditorM ()
    forall a b. (a -> b) -> a -> b
    $ \VimState
    st -> VimState
    st { vsStringToEval = s }