Module

Data.Undefined.NoProblem.Closed

#CoerceProps

class CoerceProps (given :: RowList Type) (expected :: RowList Type) (debugPath :: SList) | given -> debugPath

Instances

#CoerceProp

class CoerceProp (given :: Type) (expected :: Type) (debugPath :: SList) | expected -> debugPath

Check if given type can be coerced safely to the expected one.

Instances

#TypeEqualsOnPath

class TypeEqualsOnPath (a :: Type) (b :: Type) (p :: SList) | a -> b, b -> a

Instances

#Coerce

class (CoerceProp given expected SNil) <= Coerce given expected 

Instances

#coerce

coerce :: forall expected given. Coerce given expected => given -> expected

Modules