invertible-syntax-poly-0.1.0.1: Extends invertible-syntax library capable to use parameterized token type.

CopyrightKei Hibino 2012
LicenseBSD3
Maintainerex8k.hibino@gmail.com
Stabilityexperimental
Portabilityunknown
Safe HaskellSafe
LanguageHaskell98

Control.Isomorphism.Partial.Ext.Data

Description

This module contains isomorphism definitions of basic data types for Control.Isomorphism.Partial.

Synopsis

Documentation

succ :: Enum a => Iso a a Source

Church number succ isomorphism

singleton :: Iso a [a] Source

A value and singleton list

readShow :: (Read a, Show a) => Iso String a Source

Isomorphism from read and show

negate :: Num a => Iso a a Source

Negate number

not :: Iso Bool Bool Source

Negate boolean

reverse :: Iso [a] [a] Source

List reverse

digitInt :: Iso Char Int Source

digit char and integer

chrOrd :: Iso Char Int Source

char and charactor code

oct :: (Integral a, Show a) => Iso String a Source

Read and show octal

hex :: (Integral a, Show a) => Iso String a Source

Read and show hexadecimal

signumAbs :: (Num a, Eq a) => Iso (a, a) a Source

Isomorphism between signum, abs pair and number

digitsFloat :: RealFloat a => Iso ([Int], Int) a Source

floatToDigits and that's inverse.

floatTripleDigits :: Iso (String, (String, Int)) ([Int], Int) Source

Float Triple is (int part, (fraction part, exponent)), and Digits is result of floatToDigits

floatTriple :: RealFloat a => Iso (String, (String, Int)) a Source

Isomorphism between Float Triple and floating number