Module

Data.Struct

Package
purescript-struct
Repository
matthew-hilty/purescript-struct

Re-exports from Data.Struct.Compare

#RCompare Source

class RCompare (f :: # Type -> Type) (l :: RowList) (r :: # Type) | l -> r where

Members

Instances

#compare Source

compare :: forall f l r. RowToList r l => RCompare f l r => f r -> f r -> Ordering

Re-exports from Data.Struct.Const

#RConst Source

class RConst (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#const Source

const :: forall f l0 l1 p r0 r1. RConst p f l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => f r0 -> p (f r1) (f r0)

Re-exports from Data.Struct.Contract

#GContract Source

class GContract (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2, l0 l1 -> l2 where

Members

Instances

#RContract Source

class RContract (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#contract Source

contract :: forall f l0 l1 l2 p r0 r1 r2. GContract p f l0 r0 l1 r1 l2 r2 => RowToList r0 l0 => RowToList r1 l1 => RowToList r2 l2 => Union r2 r0 r1 => p (f r1) (f r2)

Re-exports from Data.Struct.ContractOrAlt

#RContractOrAlt Source

class RContractOrAlt (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#contractOrAlt Source

contractOrAlt :: forall f h l0 l1 p r r0 r1. Alternative h => Keys l1 => RContractOrAlt p f l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => Union r1 r r0 => p (f r0) (h (f r1))

Re-exports from Data.Struct.Delete

#RDelete Source

class RDelete (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#delete Source

delete :: forall f g l0 l1 p r0 r1 s v. Cons s v r1 r0 => Lacks s r1 => RDelete p f g s l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => g s -> p (f r0) (f r1)

Re-exports from Data.Struct.DisjointUnion

#RDisjointUnion Source

class RDisjointUnion (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#disjointUnion Source

disjointUnion :: forall f l0 l1 l2 p r0 r1 r2. Nub r2 r2 => RowToList r0 l0 => RowToList r1 l1 => RowToList r2 l2 => RDisjointUnion p f l0 r0 l1 r1 l2 r2 => Union r0 r1 r2 => f r0 -> p (f r1) (f r2)

Re-exports from Data.Struct.Empty

#REmpty Source

class REmpty (f :: # Type -> Type)  where

Members

Instances

#empty Source

empty :: forall f. REmpty f => f ()

Re-exports from Data.Struct.Equal

#REqual Source

class REqual (f :: # Type -> Type) (l :: RowList) (r :: # Type) | l -> r where

Members

Instances

#equal Source

equal :: forall f l r. REqual f l r => RowToList r l => f r -> f r -> Boolean

Re-exports from Data.Struct.Eval

#REval Source

class REval (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#eval Source

eval :: forall f l0 l1 p r0 r1. REval p f l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => p (f r0) (f r1) -> f r0 -> f r1

Re-exports from Data.Struct.Expand

#RExpand Source

class RExpand (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#expand Source

expand :: forall f l0 l1 p r r0 r1. RExpand p f l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => Union r0 r r1 => p (f r0) (f r1)

Re-exports from Data.Struct.Get

#RGet Source

class RGet (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l :: RowList) (r :: # Type) | l -> r where

Members

Instances

#get Source

get :: forall f g l r r' s v. Cons s v r' r => RGet f g s l r => RowToList r l => g s -> f r -> v

Re-exports from Data.Struct.GetOrAlt

#RGetOrAlt Source

class RGetOrAlt (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l :: RowList) (r :: # Type) | l -> r where

Members

Instances

#getOrAlt Source

getOrAlt :: forall f g h l r r' s v. Alternative h => Cons s v r' r => RowToList r l => RGetOrAlt f g s l r => g s -> f r -> h v

Re-exports from Data.Struct.Insert

#RInsert Source

class RInsert (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#insert Source

insert :: forall f g l0 l1 p r0 r1 s v. Cons s v r0 r1 => Lacks s r0 => RInsert p f g s l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => g s -> v -> p (f r0) (f r1)

Re-exports from Data.Struct.Map

#GMap Source

class GMap (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (r2 :: # Type) | l0 -> r0, l1 -> r1, l0 l1 -> r2 where

Members

Instances

#RMap Source

class RMap (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (r2 :: # Type) | l0 -> r0, l1 -> r1, l0 l1 -> r2 where

Members

Instances

#map Source

map :: forall f g l0 l1 p r0 r1 r2. RMap p f g l0 r0 l1 r1 r2 => RowToList r0 l0 => RowToList r1 l1 => g r0 -> p (f r1) (f r2)

Re-exports from Data.Struct.Match

#RMatch Source

class RMatch (f :: # Type -> Type) (g :: # Type -> Type) (v :: Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#match Source

match :: forall f g l0 l1 r0 r1 v. RMatch f g v l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => f r0 -> g r1 -> v

Re-exports from Data.Struct.Merge

#RMerge Source

class RMerge (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#merge Source

merge :: forall f l0 l1 l2 p r0 r1 r2 r3. Nub r2 r3 => RMerge p f l0 r0 l1 r1 l2 r2 => RowToList r0 l0 => RowToList r1 l1 => RowToList r2 l2 => Union r0 r1 r2 => f r0 -> p (f r1) (f r3)

Re-exports from Data.Struct.Modify

#RModify Source

class RModify (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#modify Source

modify :: forall f g l0 l1 p r r0 r1 s v0 v1. Cons s v0 r r0 => Cons s v1 r r1 => RModify p f g s l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => g s -> (v0 -> v1) -> p (f r0) (f r1)

Re-exports from Data.Struct.Nub

#RNub Source

class RNub (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#nub Source

nub :: forall f l0 l1 p r0 r1. Nub r0 r1 => RNub p f l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => p (f r0) (f r1)

Re-exports from Data.Struct.On

#ROn Source

class ROn (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

  • ron :: forall a b h. Cons s a r0 r1 => RLProxying h l0 => RLProxying h l1 => h l0 -> h l1 -> g s -> (a -> b) -> (f r0 -> b) -> f r1 -> b

Instances

#on Source

on :: forall a b f g l0 l1 r0 r1 s. Cons s a r0 r1 => ROn f g s l0 r0 l1 r1 => RowToList r0 l0 => RowToList r1 l1 => g s -> (a -> b) -> (f r0 -> b) -> f r1 -> b

Re-exports from Data.Struct.OnMatch

#ROnMatch Source

class ROnMatch (f :: # Type -> Type) (g :: # Type -> Type) (v :: Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) (l3 :: RowList) (r3 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2, l3 -> r3 where

Members

Instances

#onMatch Source

onMatch :: forall f g l0 l1 l2 l3 r0 r1 r2 r3 v. ROnMatch f g v l0 r0 l1 r1 l2 r2 l3 r3 => RowToList r0 l0 => RowToList r1 l1 => RowToList r2 l2 => RowToList r3 l3 => Union r1 r2 r3 => f r0 -> (g r2 -> v) -> g r3 -> v

Re-exports from Data.Struct.Rename

#RRename Source

class RRename (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: Symbol -> Type) (s0 :: Symbol) (s1 :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#rename Source

rename :: forall f g l0 l1 p r r0 r1 s0 s1 v. Cons s0 v r r0 => Cons s1 v r r1 => Lacks s0 r => Lacks s0 r1 => Lacks s1 r => Lacks s1 r0 => RowToList r0 l0 => RowToList r1 l1 => RRename p f g s0 s1 l0 r0 l1 r1 => g s0 -> g s1 -> p (f r0) (f r1)

Re-exports from Data.Struct.RenameMany

#GRenameMany Source

class GRenameMany (l0 :: RowList) (l1 :: RowList) (l2 :: RowList) | l0 l1 -> l2, l0 l2 -> l1

Instances

#RRenameMany Source

class RRenameMany (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2, l0 l1 -> l2, l0 l2 -> l1 where

Members

Instances

Re-exports from Data.Struct.Set

#RSet Source

class RSet (p :: Type -> Type -> Type) (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#set Source

set :: forall f g l0 l1 p r0 r1 r s v0 v1. Cons s v0 r r0 => Cons s v1 r r1 => RowToList r0 l0 => RowToList r1 l1 => RSet p f g s l0 r0 l1 r1 => g s -> v1 -> p (f r0) (f r1)

Re-exports from Data.Struct.Singleton

#RSingleton Source

class RSingleton (f :: # Type -> Type) (g :: Symbol -> Type) (s :: Symbol)  where

Members

Instances

#singleton Source

singleton :: forall f g r s v. Cons s v () r => Lacks s () => RSingleton f g s => g s -> v -> f r

Re-exports from Data.Struct.Union

#RUnion Source

class RUnion (p :: Type -> Type -> Type) (f :: # Type -> Type) (l0 :: RowList) (r0 :: # Type) (l1 :: RowList) (r1 :: # Type) (l2 :: RowList) (r2 :: # Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#union Source

union :: forall f l0 l1 l2 p r0 r1 r2. RowToList r0 l0 => RowToList r1 l1 => RowToList r2 l2 => RUnion p f l0 r0 l1 r1 l2 r2 => Union r0 r1 r2 => f r0 -> p (f r1) (f r2)

Re-exports from Data.Struct.Utils.HasSymbol

#HasSymbol Source

class HasSymbol (l :: RowList) (s :: Symbol) (b :: Boolean) | l s -> b

Instances

Re-exports from Data.Struct.Utils.HasSymbolValue

#HasSymbolValue Source

class HasSymbolValue (l :: RowList) (s :: Symbol) (b :: Boolean) | l s -> b

Instances

Re-exports from Data.Struct.Utils.ReifyKeyAndValueSymbols

#ReifyKeyAndValueSymbols Source

#reifyKeyAndValueSymbols Source

Modules
Data.Struct
Data.Struct.Compare
Data.Struct.Compare.Compare
Data.Struct.Compare.RCompare
Data.Struct.Const
Data.Struct.Const.Const
Data.Struct.Const.RConst
Data.Struct.Contract
Data.Struct.Contract.Contract
Data.Struct.Contract.GContract
Data.Struct.Contract.RContract
Data.Struct.ContractOrAlt
Data.Struct.ContractOrAlt.ContractOrAlt
Data.Struct.ContractOrAlt.RContractOrAlt
Data.Struct.Delete
Data.Struct.Delete.Delete
Data.Struct.Delete.RDelete
Data.Struct.DisjointUnion
Data.Struct.DisjointUnion.DisjointUnion
Data.Struct.DisjointUnion.RDisjointUnion
Data.Struct.Empty
Data.Struct.Empty.REmpty
Data.Struct.Equal
Data.Struct.Equal.Equal
Data.Struct.Equal.REqual
Data.Struct.Eval
Data.Struct.Eval.Eval
Data.Struct.Eval.REval
Data.Struct.Expand
Data.Struct.Expand.Expand
Data.Struct.Expand.RExpand
Data.Struct.Get
Data.Struct.Get.Get
Data.Struct.Get.RGet
Data.Struct.GetOrAlt
Data.Struct.GetOrAlt.GetOrAlt
Data.Struct.GetOrAlt.RGetOrAlt
Data.Struct.Insert
Data.Struct.Insert.Insert
Data.Struct.Insert.RInsert
Data.Struct.Map
Data.Struct.Map.GMap
Data.Struct.Map.Map
Data.Struct.Map.RMap
Data.Struct.Match
Data.Struct.Match.Match
Data.Struct.Match.RMatch
Data.Struct.Merge
Data.Struct.Merge.Merge
Data.Struct.Merge.RMerge
Data.Struct.Modify
Data.Struct.Modify.Modify
Data.Struct.Modify.RModify
Data.Struct.Nub
Data.Struct.Nub.Nub
Data.Struct.Nub.RNub
Data.Struct.On
Data.Struct.On.On
Data.Struct.On.ROn
Data.Struct.OnMatch
Data.Struct.OnMatch.OnMatch
Data.Struct.OnMatch.ROnMatch
Data.Struct.Rename
Data.Struct.Rename.RRename
Data.Struct.Rename.Rename
Data.Struct.RenameMany
Data.Struct.RenameMany.GRenameMany
Data.Struct.RenameMany.RRenameMany
Data.Struct.Set
Data.Struct.Set.RSet
Data.Struct.Set.Set
Data.Struct.Singleton
Data.Struct.Singleton.RSingleton
Data.Struct.Union
Data.Struct.Union.RUnion
Data.Struct.Union.Union
Data.Struct.Utils.HasSymbol
Data.Struct.Utils.HasSymbolValue
Data.Struct.Utils.Record
Data.Struct.Utils.ReifyKeyAndValueSymbols