wakame-0.1.0.0: Functions to manipulate records

Safe HaskellNone
LanguageHaskell2010

Wakame.Nub

Synopsis

Documentation

>>> import Wakame

class Nub s t where Source #

Typeclass for reshaping fields nub function eliminates duplicate fileds. When duplication, the first element takes precedence. It also reorders fields so to match the return type.

>>> toRow (keyed @"x" 42.0, keyed @"x" 56.4)
(x: 42.0) :* (x: 56.4) :* Nil
>>> nub $ toRow (keyed @"x" 42.0, keyed @"x" 56.4) :: Row '[ '("x", Double)]
(x: 42.0) :* Nil

Methods

nub :: Row s -> Row t Source #

Instances
Nub s ([] :: [FIELD]) Source # 
Instance details

Defined in Wakame.Nub

Methods

nub :: Row s -> Row [] Source #

(Nub s t, HasField s p) => Nub s (p ': t) Source # 
Instance details

Defined in Wakame.Nub

Methods

nub :: Row s -> Row (p ': t) Source #

class HasField r p where Source #

Typeclass to pick a first matched field

Methods

getField :: Row r -> V p Source #

Instances
HasField rs p => HasField (r ': rs) p Source # 
Instance details

Defined in Wakame.Nub

Methods

getField :: Row (r ': rs) -> V p Source #

HasField (p ': rs) p Source # 
Instance details

Defined in Wakame.Nub

Methods

getField :: Row (p ': rs) -> V p Source #