Module

Data.Struct

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

Re-exports from Data.Struct.Compare

#RCompare Source

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

Members

Instances

#compare Source

compare :: forall r l f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#const Source

const :: forall r1 r0 p l1 l0 f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row Type) | l0 -> r0, l1 -> r1, l2 -> r2, l0 l1 -> l2 where

Members

Instances

#RContract Source

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

Members

Instances

#contract Source

contract :: forall r2 r1 r0 p l2 l1 l0 f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#contractOrAlt Source

contractOrAlt :: forall r1 r0 r p l1 l0 h f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#delete Source

delete :: forall v s r1 r0 p l1 l0 g f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#disjointUnion Source

disjointUnion :: forall r2 r1 r0 p l2 l1 l0 f. 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 :: Row Type -> Type)  where

Members

Instances

#empty Source

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

Re-exports from Data.Struct.Equal

#REqual Source

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

Members

Instances

#equal Source

equal :: forall r l f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#eval Source

eval :: forall r1 r0 p l1 l0 f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#expand Source

expand :: forall r1 r0 r p l1 l0 f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l :: RowList) (r :: Row Type) | l -> r where

Members

Instances

#get Source

get :: forall v s r' r l g f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l :: RowList) (r :: Row Type) | l -> r where

Members

Instances

#getOrAlt Source

getOrAlt :: forall v s r' r l h g f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#insert Source

insert :: forall v s r1 r0 p l1 l0 g f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (r2 :: Row Type) | l0 -> r0, l1 -> r1, l0 l1 -> r2 where

Members

Instances

#RMap Source

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

Members

Instances

#map Source

map :: forall r2 r1 r0 p l1 l0 g f. 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 :: Row Type -> Type) (g :: Row Type -> Type) (v :: Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#match Source

match :: forall v r1 r0 l1 l0 g f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#merge Source

merge :: forall r3 r2 r1 r0 p l2 l1 l0 f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#modify Source

modify :: forall v1 v0 s r1 r0 r p l1 l0 g f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#nub Source

nub :: forall r1 r0 p l1 l0 f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

  • ron :: forall h b a. 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 s r1 r0 l1 l0 g f b a. 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 :: Row Type -> Type) (g :: Row Type -> Type) (v :: Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row Type) (l3 :: RowList) (r3 :: Row Type) | l0 -> r0, l1 -> r1, l2 -> r2, l3 -> r3 where

Members

Instances

#onMatch Source

onMatch :: forall v r3 r2 r1 r0 l3 l2 l1 l0 g f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s0 :: Symbol) (s1 :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#rename Source

rename :: forall v s1 s0 r1 r0 r p l1 l0 g f. 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 :: Row Type -> Type) (g :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) | l0 -> r0, l1 -> r1 where

Members

Instances

#set Source

set :: forall v1 v0 s r r1 r0 p l1 l0 g f. 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 :: Row Type -> Type) (g :: Symbol -> Type) (s :: Symbol)  where

Members

Instances

#singleton Source

singleton :: forall v s r g f. 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 :: Row Type -> Type) (l0 :: RowList) (r0 :: Row Type) (l1 :: RowList) (r1 :: Row Type) (l2 :: RowList) (r2 :: Row Type) | l0 -> r0, l1 -> r1, l2 -> r2 where

Members

Instances

#union Source

union :: forall r2 r1 r0 p l2 l1 l0 f. 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