Safe Haskell | Safe-Inferred |
---|---|

Language | Haskell98 |

- reads_exact :: Read a => String -> Maybe a
- data Case_Rule
- is_ci :: Case_Rule -> Bool
- is_cs :: Case_Rule -> Bool
- string_eq :: Case_Rule -> String -> String -> Bool
- rlookup_str :: Case_Rule -> String -> [(a, String)] -> Maybe a
- parse_enum :: (Show t, Enum t, Bounded t) => Case_Rule -> String -> Maybe t
- lookup_by :: (a -> a -> Bool) -> a -> [(a, b)] -> Maybe b
- rlookup_by :: (b -> b -> Bool) -> b -> [(a, b)] -> Maybe a
- pcn_triples :: [a] -> [(Maybe a, a, Maybe a)]
- type T2 a = (a, a)
- type T3 a = (a, a, a)
- type T4 a = (a, a, a, a)
- mk_duples :: (a -> c) -> (b -> c) -> [(a, b)] -> [c]
- mk_duples_l :: (Int -> c) -> (a -> c) -> (b -> c) -> [(a, [b])] -> [c]
- mk_triples :: (a -> d) -> (b -> d) -> (c -> d) -> [(a, b, c)] -> [d]

# Documentation

# STRING / CASE

string_eq :: Case_Rule -> String -> String -> Bool Source

String equality with `Case_Rule`

.

string_eq CI "lower" "LOWER" == True

rlookup_str :: Case_Rule -> String -> [(a, String)] -> Maybe a Source

`rlookup_by`

of `string_eq`

.

# LIST

rlookup_by :: (b -> b -> Bool) -> b -> [(a, b)] -> Maybe a Source

Reverse `lookup`

with equality function.

pcn_triples :: [a] -> [(Maybe a, a, Maybe a)] Source

(prev,cur,next) triples.

pcn_triples [1..3] == [(Nothing,1,Just 2),(Just 1,2,Just 3),(Just 2,3,Nothing)]

# TUPLES

mk_duples_l :: (Int -> c) -> (a -> c) -> (b -> c) -> [(a, [b])] -> [c] Source

Length prefixed list variant of `mk_duples`

.

mk_triples :: (a -> d) -> (b -> d) -> (c -> d) -> [(a, b, c)] -> [d] Source

`concatMap`

of *f* at *x* and *g* at *y* and *h* at *z*.