Context

type Context a b = (Adj b, Node, a, Adj b)
fgl Data.Graph.Inductive.Graph
Links to the Node, the Node itself, a label, links from the Node.
module Text.Regex.Base.Context
regex-base Text.Regex.Base.Context
This is a module of instances of RegexContext (defined in Text.Regex.Base.RegexLike). Nothing else is exported. This is usually imported via the Text.Regex.Base convenience package which itself is re-exported from newer Text.Regex.XXX modules provided by the different regex-xxx backends. These instances work for all the supported types and backends interchangably. These instances provide the different results that can be gotten from a match or matchM operation (often via the =~ and =~~ operators with combine makeRegex with match and matchM respectively). This module name is Context because they operators are context dependent: use them in a context that expects an Int and you get a count of matches, use them in a Bool context and get True if there is a match, etc. RegexContext a b c takes a regular expression suppied in a type a generated by RegexMaker and a target text supplied in type b to a result type c using the match class function. The matchM class function works like match unless there is no match found, in which case it calls fail in the (arbitrary) monad context. There are a few type synonyms from RegexLike that are used here: > > -- | 0 based index from start of source, or (-1) for unused > type MatchOffset = Int > -- | non-negative length of a match > type MatchLength = Int > type MatchArray = Array Int (MatchOffset, MatchLength) > type MatchText source = Array Int (source, (MatchOffset, MatchLength)) There are also a few newtypes that used to prevent any possible overlap of types, which were not needed for GHC's late overlap detection but are needed for use in Hugs. > newtype AllSubmatches f b = AllSubmatches {getAllSubmatches :: (f b)} > newtype AllTextSubmatches f b = AllTextSubmatches {getAllTextSubmatches :: (f b)} > newtype AllMatches f b = AllMatches {getAllMatches :: (f b)} > newtype AllTextMatches f b = AllTextMatches {getAllTextMatches :: (f b) } The newtypes' f parameters are the containers, usually [] or Array Int, (where the arrays all have lower bound 0). The two *Submatches newtypes return only information on the first match. The other two newtypes return information on all the non-overlapping matches. The two *Text* newtypes are used to mark result types that contain the same type as the target text. Where provided, noncaptured submatches will have a MatchOffset of (-1) and non-negative otherwise. The semantics of submatches depend on the backend and its compile and execution options. Where provided, MatchLength will always be non-negative. Arrays with no elements are returned with bounds of (1,0). Arrays with elements will have a lower bound of 0. XXX THIS HADDOCK DOCUMENTATION IS OUT OF DATE XXX These are for finding the first match in the target text: RegexContext a b Bool  (:) Whether there is any match or not. RegexContext a b ()  (:) Useful as a guard with matchM or =~~ in a monad, since failure to match calls fail. RegexContext a b b  (:) This returns the text of the whole match. It will return empty from the Extract type class if there is no match. These are defined in each backend module, but documented here for convenience. RegexContext a b (MatchOffset,MatchLength)  (:) This returns the initial index and length of the whole match. MatchLength will always be non-negative, and 0 for a failed match. RegexContext a b (MatchResult b)  (:) The MatchResult structure with details for the match. This is the structure copied from the old JRegex pacakge. RegexContext a b (b, b, b)  (:) The text before the match, the text of the match, the text after the match RegexContext a b (b, MatchText b, b)  (:) The text before the match, the details of the match, and the text after the match RegexContext a b (b, b, b, [b])  (:) The text before the match, the text of the match, the text after the match, and a list of the text of the 1st and higher sub-parts of the match. This is the same return value as used in the old Text.Regex API. Two containers of the submatch offset information: RegexContext a b MatchArray  (:) Array of (MatchOffset,MatchLength) for all the sub matches. The whole match is at the intial 0th index. Noncaptured submatches will have a MatchOffset of (-1) The array will have no elements and bounds (1,0) if there is no match. RegexContext a b (AllSubmatches [] (MatchOffset,MatchLength)  (:) List of (MatchOffset,MatchLength) The whole match is the first element, the rest are the submatches (if any) in order. The list is empty if there is no match. Two containers of the submatch text and offset information: > RegexContext a b (AllTextSubmatches (Array Int) (b, (MatchOffset, MatchLength))) > RegexContext a b (AllTextSubmatches [] (b, (MatchOffset, MatchLength))) Two containers of the submatch text information: > RegexContext a b (AllTextSubmatches [] b) > RegexContext a b (AllTextSubmatches (Array Int) b) These instances are for all the matches (non-overlapping). Note that backends are supposed to supply RegexLike instances for which the default matchAll and matchAllText stop searching after returning any successful but empty match. RegexContext a b Int  (:) The number of matches, non-negative. Two containers for locations of all matches: > RegexContext a b (AllMatches [] (MatchOffset, MatchLength)) > RegexContext a b (AllMatches (Array Int) (MatchOffset,MatchLength)) Two containers for the locations of all matches and their submatches: RegexContext a b [MatchArray]  (:) > RegexContext a b (AllMatches (Array Int) MatchArray) Two containers for the text and locations of all matches and their submatches: > RegexContext a b [MatchText b] > RegexContext a b (AllTextMatches (Array Int) (MatchText b)) Two containers for text of all matches:  RegexContext a b (AllTextMatches [] b) > RegexContext a b (AllTextMatches (Array Int) b) Four containers for text of all matches and their submatches: > RegexContext a b [[b]] > RegexContext a b (AllTextMatches (Array Int) [b]) > RegexContext a b (AllTextMatches [] (Array Int b)) > RegexContext a b (AllTextMatches (Array Int) (Array Int b)) Unused matches are empty (defined via Extract)
type Context' a b = Maybe (Adj b, a, Adj b)
fgl Data.Graph.Inductive.Monad.IOArray
data ContextFlag
GLUT Graphics.UI.GLUT.Initialization
A flag affecting the rendering context to create, used in conjunction with initialContextFlags.
data ContextProfile
GLUT Graphics.UI.GLUT.Initialization
An OpenGL API profile, affecting the rendering context to create, used in conjunction with initialContextProfile.
data ContextProfile'
OpenGL Graphics.Rendering.OpenGL.GL.StringQueries
context :: Graph gr => gr a b -> Node -> Context a b
fgl Data.Graph.Inductive.Graph
Find the context for the given Node. Causes an error if the Node is not present in the Graph.
contextM :: GraphM m gr => m (gr a b) -> Node -> m (Context a b)
fgl Data.Graph.Inductive.Monad
contextProfile :: GettableStateVar [ContextProfile']
OpenGL Graphics.Rendering.OpenGL.GL.StringQueries
AllowDirectContext :: DirectRendering
GLUT Graphics.UI.GLUT.Initialization
Try to use direct rendering, silently using indirect rendering if this is not possible.
checkContext :: HsType -> P HsContext
haskell-src Language.Haskell.ParseUtils
CreateNewContext :: RenderingContext
GLUT Graphics.UI.GLUT.Initialization
Create a new context via glXCreateContext or wglCreateContext (default).
DebugContext :: ContextFlag
GLUT Graphics.UI.GLUT.Initialization
Debug contexts are intended for use during application development, and provide additional runtime checking, validation, and logging functionality while possibly incurring performance penalties. The additional functionality provided by debug contexts may vary according to the implementation. In some cases a debug context may be identical to a non-debug context.
everythingWithContext :: s -> (r -> r -> r) -> GenericQ (s -> (r, s)) -> GenericQ r
syb Data.Generics.Schemes
Summarise all nodes in top-down, left-to-right order, carrying some state down the tree during the computation, but not left-to-right to siblings.
ForceDirectContext :: DirectRendering
GLUT Graphics.UI.GLUT.Initialization
Try to use direct rendering, issue an error and terminate the program if this is not possible.This corresponds to the command line argument -direct, see initialize.
ForceIndirectContext :: DirectRendering
GLUT Graphics.UI.GLUT.Initialization
Rendering is always done through the X server. This corresponds to the command line argument -indirect, see initialize.
ForwardCompatibleContext :: ContextFlag
GLUT Graphics.UI.GLUT.Initialization
Forward-compatible contexts are defined only for OpenGL versions 3.0 and later. They must not support functionality marked as deprecated by that version of the API, while a non-forward-compatible context must support all functionality in that version, deprecated or not.
getContext :: GraphM m gr => GT m (gr a b) (Context a b)
fgl Data.Graph.Inductive.Query.Monad
type HsContext = [HsAsst]
haskell-src Language.Haskell.Syntax
initialContextFlags :: StateVar [ContextFlag]
GLUT Graphics.UI.GLUT.Initialization
(freeglut only) Controls the set of flags for the rendering context.

Show more results