Extract

Extract a scalar element from a vector * val: The vector * idx: The index of the scalar within the vector
Extract allows for indexing operations on String or ByteString.
Given a machine state, compute a value out of it
(Extract s lst) pulls the Factor that matches s out of lst, returning a diminished list and, possibly, the extracted Factor.
Extract A [A, B, C] ==> ([B, C], Just A
Extract F [A, B, C] ==> ([A, B, C], Nothing)
Extract all docstrings from given list of files/modules. This includes the docstrings of all local modules that are imported from those modules (possibly indirect).
Extract a Pseudo Random Key using the parameter and the underlaying hash mechanism
extract . fmap f = f . extract
Extract all the files contained in a ".tar" file. It is equivalent to calling the standard tar program like so:
$ tar -x -f tarball.tar -C dir
So for example if the tarball.tar file contains foo/bar.txt then this will extract it to dir/foo/bar.txt. This is a high level "all in one" operation. Since you may need variations on this function it is instructive to see how it is written. It is just:
import qualified Data.ByteString.Lazy as BL

Tar.unpack dir . Tar.read =<< BL.readFile tar
Notes: Extracting can fail for a number of reasons. The tarball may be incorrectly formatted. There may be IO or permission errors. In such cases an exception will be thrown and extraction will not continue. Since the extraction may fail part way through it is not atomic. For this reason you may want to extract into an empty directory and, if the extraction fails, recursively delete the directory. Security: only files inside the target directory will be written. Tarballs containing entries that point outside of the tarball (either absolute paths or relative paths) will be caught and an exception will be thrown.
Retrieve the last effect in a Union.
extract takes an offset and length, and has this default implementation:
extract (off, len) source = before len (after off source)
Extract the value from a SetAppend. Note that a SetAppend is actually a CoPointed from: http://hackage.haskell.org/packages/archive/category-extras/latest/doc/html/Control-Functor-Pointed.html But lets not drag in that dependency. yet...
Extracts Haskell value from the Dhall expression
Extract a sub-range of elements from an array.
Extract all docstrings from given list of files/modules. This includes the docstrings of all local modules that are imported from those modules (possibly indirect). Can throw ExtractError if an error occurs while extracting the docstrings, or a SourceError if an error occurs while parsing the module. Can throw a ModuleNotFoundError if a module's source file cannot be found.
Deprecated: Concat is not wrapping Seq any more, don't use concatenate nor extract.
If msg is Monoid then extract performs given log action by passing mempty to it.
>>> logPrint :: LogAction IO [Int]; logPrint = LogAction print

>>> extract logPrint
[]
Specialised version of prj/decomp that works on an Union '[t] :: * -> * which contains only one specific summand. Hence the absence of Maybe, and Either. O(1)