| Copyright | (c) Sergey Vinokurov 2018 | 
|---|---|
| License | Apache-2.0 (see LICENSE) | 
| Maintainer | serg.foo@gmail.com | 
| Safe Haskell | Safe-Inferred | 
| Language | GHC2021 | 
Data.Emacs.Module.Value
Description
Synopsis
- data Value (s :: k)
Documentation
Value that is independent of environment (Env) that produced it.
 Incidentally, this implies that it's "protected" against Emacs GC and
 thus will not unexpectedly go out of scope.
In order to prevent memory leaks, value is registered in the Emacs
 monad than produced it and will be freed when the monad finishes.
 To make the connection clear the value is tagged with parameter
 s, which serves the same purpose as tag of the ST monad. That
 is, it ensures that value cannot leave the scope of the monad that
 produced it.