dataframe-0.3.3.2: A fast, safe, and intuitive DataFrame library.
Safe HaskellNone
LanguageHaskell2010

DataFrame.Internal.Types

Synopsis

Documentation

type Columnable' a = (Typeable a, Show a, Ord a, Eq a, Read a) Source #

data Rep Source #

A type with column representations used to select the "right" representation when specializing the toColumn function.

Constructors

RBoxed 
RUnboxed 
ROptional 

type family If (cond :: Bool) (yes :: k) (no :: k) :: k where ... Source #

Type-level if statement.

Equations

If 'True (yes :: k) (_1 :: k) = yes 
If 'False (_1 :: k) (no :: k) = no 

type family Unboxable a :: Bool where ... Source #

All unboxable types (according to the vector package).

type family KindOf a :: Rep where ... Source #

Compute the column representation tag for any ‘a’.

Equations

KindOf (Maybe a) = 'ROptional 
KindOf a = If (Unboxable a) 'RUnboxed 'RBoxed 

data SBool (b :: Bool) where Source #

Type-level boolean for constraint/type comparison.

Constructors

STrue :: SBool 'True 
SFalse :: SBool 'False 

class SBoolI (b :: Bool) where Source #

The runtime witness for our type-level branching.

Methods

sbool :: SBool b Source #

Instances

Instances details
SBoolI 'False Source # 
Instance details

Defined in DataFrame.Internal.Types

Methods

sbool :: SBool 'False Source #

SBoolI 'True Source # 
Instance details

Defined in DataFrame.Internal.Types

Methods

sbool :: SBool 'True Source #

sUnbox :: SBoolI (Unboxable a) => SBool (Unboxable a) Source #

Type-level function to determine whether or not a type is unboxa

type family When (flag :: Bool) c where ... Source #

Equations

When 'True c = c 
When 'False c = () 

type UnboxIf a = When (Unboxable a) (Unbox a) Source #

type family FloatingTypes a :: Bool where ... Source #