yi-0.6.2.3: The Haskell-Scriptable EditorSource codeContentsIndex
Yi
Description

Facade of the Yi library, for use by confguration file. Just re-exports a bunch of modules.

You should therefore: import Yi in your ~.yi scripts

Synopsis
newtype Proto a = Proto {
fromProto :: a -> a
}
extractValue :: Proto t -> t
override :: Proto a -> (a -> a -> a) -> Proto a
(.->) :: forall t a. Proto t -> (t -> a) -> a
module Yi.Boot
module Yi.Config
module Yi.Core
module Yi.Dired
module Yi.Eval
module Yi.File
module Yi.Config.Default
module Yi.Search
module Yi.Style
module Yi.Style.Library
module Yi.Misc
module Yi.Mode.Haskell
Documentation
newtype Proto a Source

A prototype. Typically the parameter will be a record type. Fields can be defined in terms of others fields, with the idea that some of these definitons can be overridden.

Example:

 data O = O {f1, f2, f3 :: Int}
     deriving Show
 o1 = Proto $ \self -> O
   {
    f1 = 1,
    f2 = f1 self + 1,  -- 'f1 self' refers to the overriden definition of f1.
    f3 = f1 self + 2
   }
Constructors
Proto
fromProto :: a -> a
extractValue :: Proto t -> tSource
Get the value of a prototype. This can return bottom in case some fields are recursively defined in terms of each other.
override :: Proto a -> (a -> a -> a) -> Proto aSource

Override a prototype. Fields can be defined in terms of their definition in the base prototype.

Example:

 o2 = o1 `override` \super self -> super 
    {
    f1 = f1 super + 10,
    f3 = f3 super + 1
    }
(.->) :: forall t a. Proto t -> (t -> a) -> aSource
Field access
module Yi.Boot
module Yi.Config
module Yi.Core
module Yi.Dired
module Yi.Eval
module Yi.File
module Yi.Config.Default
module Yi.Search
module Yi.Style
module Yi.Style.Library
module Yi.Misc
module Yi.Mode.Haskell
Produced by Haddock version 2.6.1